在vue中如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。
所以解决办法有以下四种:
方法一:初始化列出所有对象属性,并给默认值
data(){
return{
setPwdDialogVisible: false, // 弹窗展示数据
setPwdContent: {
acc:'',
pwd:'',
isadmin:false;
}, // 详情弹窗展示内容
}
}
原来写法是:
data(){
return{
setPwdDialogVisible: false, // 弹窗展示数据
setPwdContent: null, // 详情弹窗展示内容
}
}
方法二:先通过Object.assign对象拷贝,再赋值
clickSetPwd(scope)
{
console.log(scope);
let setPwdObject = [];
setPwdObject.Account = scope.row.Account;
setPwdObject.RealName = scope.row.RealName;
setPwdObject.Password = '';
setPwdObject.IsAdmin = scope.row.Type === 9;
let obj