bindtouchmove拖动,旋转,缩放元素,setData处理复杂数据时,有明显延时,延时时间大约在半秒到一秒左右,数据简单时延时不明显
我们平台是做商品定制的,需要对多个元素进行拖动,缩放,旋转等功能,元素数据存放在一个数组里,包括top,left,rotate,scale,z-index,中心点等值,touchmove时,用setData对数组赋值,页面展现的效果延时严重
组件用的是movable-view
数据结构
[
{
active: true, // 是否选中
first: true, // 是否第一次加载
src: '', // 图片链接
width: 0, // 父级宽度
height: 0, // 父级高度
top: 0, // 父级top值
left: 0, // 父级left值
centerX: 0, // 中心点x坐标
centerY: 0, // 中心点y坐标
rotate: 0, // 旋转角度
imgInfo: { // 子级图片信息
width: 0, // 子级图片宽度
height: 0, // 子级图片高度
x: 0, // 子级图片中心点x坐标
y: 0, // 子级图片中心点y坐标
top: 0, // 子级图片top值
left: 0 // 子级图片left值
},
z: 1 // z-index值
}
]
数组length不确定,用户可以任意添加或删除
请问您解决了吗?本人写了一个拖拽进度条开发工具和ios 没有问题但是安卓不可以,问题就是在touchmove事件中频繁调用setData,也必须实时调用 setData,求解
请问楼主你是怎么用movable-view 做旋转的
要写判断,不要时时setData,在需要的时候写节流函数
还是有延时
capture-catch:touchstart
capture-catch:touchmove
capture-catch:touchend
全部换掉,是可以做的,但是安卓还是有一点点卡顿,但基本能接受
求解决
必须实时赋值
js好像有节流一说,这个看你需求的,能实现降低频率或拖动结束后赋值
拖动元素肯定得赋值啊,难道不是这样赋值吗?
touchmove时,用setData对数组赋值,是不是赋值太频繁了?