Vue之坑

350 阅读1分钟

1. 不刷新视图

export default {
  data(){
    return {
      storeInfo: {//对象里不写具体的key,且在赋值时是单个赋值的时候会有不刷新视图的情况
        
      }
    }
  },
  methods: {
      changeStore() {
        //在这修改偶尔会补刷新视图
        this.storeInfo.storeName = '11'
        this.storeInfo.storeCode = '22' 
      }
  }
}
//需要改成一
export default {
  data(){
    return {
      storeInfo: {//对象里不写具体的key,且在赋值时是单个赋值的时候会有不刷新视图的情况
        storeName:'',
        storeCode:''
      }
    }
  },
  methods: {
      changeStore() {
        //在这修改偶尔会补刷新视图
        this.storeInfo.storeName = '11'
        this.storeInfo.storeCode = '22' 
      }
  }
}

2 不刷新视图

dealQueryData(res) {
  let dataList = [];
  if(res.data.dataList && res.data.dataList.length) {
    dataList = res.data.dataList;
    this.pager = {
      total: res.data.total,
      totalPage: res.data.totalPage,
      pageIndex: res.data.pageIndex,
      pageSize: res.data.pageSize,
    };
  }else {
    this.pager = {};
  }
  
  if(this.LOGINDATA.member_name_modify_record) {
    dataList.forEach(item => {
      item.isShowViewNameBtn = true;
      item.isShowTrueName = false;
      item.isShowViewPhoneBtn = true;
      item.isShowTruePhone = false;
    })
  }
  //数据修改后统一在下面赋值,如果先赋值再增加新字段,会出现不刷新视图
  this.dataList = dataList

}