3***@qq.com
3***@qq.com
  • 发布:2024-10-29 17:39
  • 更新:2024-10-29 20:35
  • 阅读:121

【报Bug】报一个关于uni-file-picker组件的BUG

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10

HBuilderX类型: 正式

HBuilderX版本号: 4.29

第三方开发者工具版本号: 1.06.2407120

基础库版本号: 3

项目创建方式: HBuilderX

示例代码:
<uni-file-picker limit="5" :sourceType="sourceType" title="最多选择5张图片"  
                                @delete="(e) => deleteimage(e,index)" @select="(e) => handleChange(e, index)"  
                                v-model="item.pictureUrlList"></uni-file-picker>
deleteimage(e, type) {  
                for (var i = 0; i < this.executeDtoList[0].executeParamList[type].pictureUrlList.length; i++) {  
                    if (e.index === i) {  
                        this.executeDtoList[0].executeParamList[type].pictureUrlList.splice(i, 1);  
                        console.log(this.executeDtoList[0].executeParamList)  
                    }  
                }  
            },

操作步骤:
<uni-file-picker limit="5" :sourceType="sourceType" title="最多选择5张图片"  
                                @delete="(e) => deleteimage(e,index)" @select="(e) => handleChange(e, index)"  
                                v-model="item.pictureUrlList"></uni-file-picker>
deleteimage(e, type) {  
                for (var i = 0; i < this.executeDtoList[0].executeParamList[type].pictureUrlList.length; i++) {  
                    if (e.index === i) {  
                        this.executeDtoList[0].executeParamList[type].pictureUrlList.splice(i, 1);  
                        console.log(this.executeDtoList[0].executeParamList)  
                    }  
                }  
            },

预期结果:

不覆盖本地图片数组的数据

实际结果:

覆盖了我本地图片数组的数据

bug描述:

这块代码的作用是在删除图片的时候,同时删除本地图片数组的数据。
但在uni-file-picker删除选中的图片时,通过@delete监听事件调用deleteimage方法,这个方法会把本地数组里的数据更改为方法deleteimage(e, type)里传的e数据,这个我有点没明白是怎么回事。

如附件2打印出来的数据。上面红框显示的是调用方法之前的本地图片数组的数据。下面红框打印的是调用deleteimage方法之后的本地图片数组的数据,图片是成功删除了,但还会把e数据覆盖到我本地图片数组的数据。

如附件3,保证绝对没有其他的代码存在

2024-10-29 17:39 负责人:无 分享
已邀请:
DCloud_UNI_yuhe

DCloud_UNI_yuhe

可能是你 v-model 绑定了你要修改的这个数据吧,v-model 一般只是用来回显数据,你可以尝试打印 v-model 的绑定值看一看

  • 3***@qq.com (作者)

    v-model绑定的就是我图片本地数组

    2024-10-30 08:32

  • 3***@qq.com (作者)

    刚才我试了一下,跟v-model没有关系,因为我额外创建了一个没有绑定v-model的图片数组,只要删除照片,这个额外的数组的值也一样会被改变成e

    2024-10-30 09:01

  • 3***@qq.com (作者)

    我现在不能用pictureUrlList 这个名字,用pictureUrlList 2就不会被赋值,还是希望官方人员看看这是个什么问题。

    2024-10-30 09:34

要回复问题请先登录注册