state(){
return{filterParams:[] /**设置数组*/
}} ,
mutations: {
updateFilterParams(state,res){
let filterParams=state.filterParams;
let len=filterParams.length;if(!len){
state.filterParams.push(res);
}else{
let key=filterParams.findIndex(e => e.name === res.name);
if(key>=0){/**直接通过赋值,不会触发getter方法刷新*/
//state.filterParams[key]=res;
/***将对象转换一下,然后在从新赋值,就可以解决*/
state.filterParams[key]=JSON.parse(JSON.stringify(res));
}}
}
}
组件监听:需要加上deep:true。
watch(() => store.state.filterParams,(ov,nv)=>{
/**相关监听代码**/
},{deep:true});