Bootstrap

element ui-----Checkbox--

日常遇到的小问题

在使用Checkbox时,用v-mode绑定值,后端给我的值是1和0,我查看element ui 的文档是可以v-mode可以是string,number,Boolean,但是却不能选中,
在这里插入图片描述
因为
查了一下才知道。
前端添加checked属性, vue并没有添加 get 和 set 方法,因此,监听不到 checked 值变化,进而不能更新view。这点可以在浏览器vue调试中看到,点击时,数据的checked属性 true 和 false 是在交替变化,但是view上没有同步更新。

解决方法

用 vue.$set 方法,强制vue监听checked属性:

// 根据自己的数据结构
 list.map(item=>{
    if(item.permissionStatus == 1){
             this.$set(item,"checked",true)
         }else{
          this.$set(item,"checked",false)
         }
         return item
       });
       this.tableDataGlobalPermission = list
;