[BUG] slideview show动态改变时有问题
Bug描述
动态改变slideview show属性 不能按预期弹出右侧按钮,过了很长时间会慢慢的出来 通过调试我发现是在动态设置show为true的时候 这段代码有问题 var showChange = function(newVal, oldVal, ownerInstance, ins) { var st = ins.getState(); st.show = newVal if (st.disable) return if (st.show) { showButtons(ins, ownerInstance, st.duration) //这里没有除1000导致时间错误,动画时间很长会慢慢的出来 } else { innerHideButton(ownerInstance) } } 这段就没问题 var touchend = function(event, ownerInstance) { var ins = event.instance var st = ins.getState() if (!st.size || !st.isMoving) return // 左侧45度角为界限,大于45度则允许水平滑动 if (st.firstAngle < 0) { return } var duration = st.duration / 1000 //这里除了1000就没问题 st.isMoving = false // console.log('touchend', JSON.stringify(event)) var btns = ownerInstance.selectAllComponents('.btn') var len = btns.length var i = len - 1 // console.log('len size', len) if (Math.abs(event.changedTouches[0].pageX - st.startX) < st.throttle || event.changedTouches[0].pageX - st.startX > 0) { // 方向也要控制 st.out = false ins.setStyle({ 'transform': 'translate3d(0px, 0, 0)', 'transition': 'transform ' + (duration) + 's' }) for (;i >= 0; i--) { btns[i].setStyle({ 'transform': 'translate3d(0px, 0, 0)', 'transition': 'transform ' + (duration) + 's' }) } ownerInstance.callMethod('hide') return } showButtons(ins, ownerInstance, duration) ownerInstance.callMethod('show') }
复现方式
直接使用都是这样
版本信息
useExtendedLib