一个不走缓存的存储记录(返回列表页的时候展示出来离开列表页时候的数据) - 戴向天

大家好!我叫戴向天

QQ群:602504799

如若有不理解的,可加QQ群进行咨询了解

  Vue.mixin({
	methods:{
		/**
       * $pageParams 使用方发
       *  一个不走缓存的存储记录
       * Author: 戴向天
       *
       *    (this as any).setPageParams({
       *        pageSize: 10,
       *        pageNumber: 2,
       *        key: '',
       *    });
       *
       *    (this as any).getPageParams(not Params);
       *
       *    (this as any).deletePageParams(not Params);
       *
       *  $pageParams的来源是在main.js里面
       *    也就是在Vue初始化的时候,已经开始进行原型链的创建了。
       *  主要是做每个页面的信息存储
       *  例如:当前的页面有列表页,而列表页的已经进行了各种参数的切换
       *       如果进行进入详情页面,再进行返回的时候,需要还是进入之前的列表参数
       *  用该方法就可以进行轻松实现
       */
      // 设置页面信息
      setPageParams(params: any, name?: string) {
        (this as any).$pageParams[name || (this as any).$options.name] = params;
      },
      /**
       * 获取页面信息
       * */
      getPageParams(name?: string) {
        return (
          ((this as any).$pageParams || {})[
            name || (this as any).$options.name
          ] || null
        );
      },
      // 删除页面信息
      deletePageParams(name?: string) {
        delete (this as any).$pageParams[name || (this as any).$options.name];
      },
	}
  })

使用方法:

// file name: list.vue

 private beforeDestroy() {
    (this as any).setPageParams({
      ...,
    });
  }

  private async created() {
    const params = (this as any).getPageParams();
    if (params) {
      this.params = params;
    }
  }

猜你喜欢

转载自blog.csdn.net/weixin_41088946/article/details/114403479