猿问

关于Iview select 开启多选时,@on-change 方法自动触发

上关键代码
:label="permission":key="index">
不知道为什,每次刷新页面时,on-change方法就会自动触发
其中row.permission是json格式的数组,如["增加","删除","修改"]
因为iview说select开启多选时,接受数组类型数据,同时也返回数组类型数据,所以我获取到数据的时候,转换成了数组,所以row.permission是数组没问题,代码如下
for(letuserPartoftemp){
userPart.permission=JSON.parse(userPart.permission);
}
问题就不知道出在哪里。。。。。。有老哥知道这个是怎么回事吗?需要其他代码的话,麻烦提一下,谢谢
婷婷同学_
浏览 1584回答 2
2回答

海绵宝宝撒

iview的Select在v-model的默认值非空数组确实会在初始化时触发一次on-change,但不知是有意为之还是bug

波斯汪

最后决定加一个@on-open-change的方法来判断是否允许执行on-change中的方法修改后的select代码如下allowedChange(value){console.log("是否允许修改:",value);this.could_update=value;},asyncupdatePermission(aim_openID,new_permission){if(this.could_update){console.log("正在修改");awaitthis.$apis.AdminApi.updateRoleOrPermission(aim_openID,JSON.stringify(new_permission),"permission");}},
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答