- 有关自定义组件的事件触发延迟问题
从自定义组件内部使用this.triggerEvent('num-change',1)将数据传到组件外,在外部使用e.detail获取这个值,如果点击过快的话会导致数据出错,例如多个组件加起来的值为0,但组件外计算的值却为-1或其他不对的值。 代码如下: 自定义组件: [代码]<view class=[代码][代码]"num-controller"[代码][代码]>[代码][代码] [代码][代码]<view class=[代码][代码]"iconfont icon-jianshao sub-btn"[代码] [代码]hidden=[代码][代码]"{{init}}"[代码] [代码]bindtap=[代码][代码]"sub"[代码][代码]></view>[代码][代码] [代码][代码]<view class=[代码][代码]"goods-num"[代码] [代码]hidden=[代码][代码]"{{init}}"[代码][代码]>{{num}}</view>[代码][代码] [代码][代码]<view class=[代码][代码]"iconfont icon-zengjia add-btn"[代码] [代码]bindtap=[代码][代码]"add"[代码][代码]></view>[代码][代码]</view>[代码][代码]methods: {[代码][代码] [代码][代码]add() {[代码][代码] [代码] [代码] [代码][代码]if[代码] [代码]([代码][代码]this[代码][代码].data.init) {[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]init: [代码][代码]false[代码][代码] [代码][代码]})[代码][代码] [代码][代码]}[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]num: [代码][代码]this[代码][代码].data.num + 1[代码][代码] [代码][代码]})[代码][代码] [代码][代码]this[代码][代码].triggerEvent([代码][代码]'numChange'[代码][代码], 1);[代码][代码] [代码][代码]},[代码][代码] [代码][代码]sub() {[代码][代码] [代码][代码]if[代码][代码]([代码][代码]this[代码][代码].data.num > 0) {[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]num: [代码][代码]this[代码][代码].data.num - 1[代码][代码] [代码][代码]})[代码][代码] [代码][代码]}[代码][代码] [代码][代码]if[代码][代码]([代码][代码]this[代码][代码].data.num == 0){[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]init: [代码][代码]true[代码][代码] [代码][代码]})[代码][代码] [代码][代码]}[代码][代码] [代码][代码]this[代码][代码].triggerEvent([代码][代码]'numChange'[代码][代码], -1);[代码][代码] [代码][代码]}[代码][代码] [代码][代码]}[代码] 外部: [代码]<num-controller num=[代码][代码]"{{0}}"[代码] [代码]bindnumChange=[代码][代码]"numChange"[代码][代码]></num-controller>[代码][代码]numChange(e) {[代码] [代码] [代码][代码]const num = e.detail;[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]goodsNum: [代码][代码]this[代码][代码].data.goodsNum + num[代码][代码] [代码][代码]})[代码][代码] [代码][代码]},[代码] 因为每次触发this.trigerrEvent都有一个时间戳,这个时间戳导致了组件内外的数据有差异,点击过快的时候就会出现bug,不知道该如何解决?哪位大佬指导一下?
2018-07-20 - 调用getPhoneNumber后第一次授权发送短信验证码
是所有手机都会第一次需要填写短信验证码吗?为什么我在某个已经上线的小程序中授权手机号不会有短信验证码?且是第一次使用那个小程序 是否是小程序版本问题?
2018-06-29 - 模拟器上调试的时候checkSesiion不会返回errCode但远程调试可以
那么是不是意味着在真机上也可以使用errCode判断返回的状态?可是在模拟器上又没有,不知道怎么统一调试
2018-06-26