选中图片后,只要移动图片就会黑屏,安卓苹果必现
Description
[问题描述:站在其它人的角度尽可能清晰地、简洁地把问题描述清楚] [Description of the issue] 选择图片后,拖动图片马上黑屏,点击生成是空白,安卓苹果必现
Environment
-
Platform: [开发者工具/iOS/Andriod/Web] 1.02.1801081
-
Platform version: [对应工具或者iOS或者Andriod的版本号] android 7.0,ios11
-
Wechat version: [微信版本号] 6.6.1.1220 Wechatlib1.9.5
-
we-cropper version: [在package.json里] "libVersion": "1.9.1",
-
other version: [如果是插件问题,请列出问题插件的版本号]
Reproduce
[如何重现问题]
手动拖动必现
Observed Results
[实际表现]
黑屏
Expected Results
[期望表现]
正常显示并选中
Relevant Code / Logs
// TODO(you): code or logs ohere to reproduce the problem
我也遇到了相同的问题,debug之后发现是touch事件中的对象被更新了。
单指移动剪裁框时,touchStart方法里面看到touches数组只有个一个对象,见下图:

同次事件,touchMove里面的touches数组多了一个function对象,以至于在后面判断是否两指操作上面进入了错误的分支,并在计算scale的时候出了错,见下图:

目前我们项目里面只是在这边粗暴的把function对象从touch数组中过滤掉来解决这个问题,至于为什么event的touches里面会混入function对象还没有找到原因。
我也遇到了同样的问题,但是根据楼上的说法,我检测了我的touches数组,并没有多,而且我的时ios可以,安卓会黑屏
@sophiaWang611 感谢定位问题,另外,是否只在特定机型特定基础库出现呢?
相同的问题。 在iphone6s、iphone x下真机测试每次都能复现。 微信版本6.6.6
经过测试,在微信里传入的 e.touches数组里有多个function。
解决方案:
touchMove里面重新定义了一个数组,然后遍历e.touches, typeof == 'object'的push到新数组,过滤掉function对象后解决了。
我这边调试发现的是 e.touches里不止一个function,而是会有很多很多个。
不知道是否是因为引入了阿拉丁小程序统计js的问题, 屏蔽掉该JS后问题依然存在。 过滤掉function对象后恢复正常。
同样遇到类似问题。我的在模拟器上没问题,放手机上touches数组会多很多个null,过滤掉也不行,我把代码中判断单双指的数组改成了changedTouches,单指拖动不消失了,但是图片会歪到右下角不能再拖动,双指还是会消失,,我把源码整个拷到项目都不行。总体来说没法用

这样子就好了
页面调用正常使用,小程序退回到聊天页面在我的小程序页面打开小程序选中照片裁剪会闪退