最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號安全,請及時綁定郵箱和手機立即綁定

關(guān)于路由和Vuex擦出的那點火花

这是本人在用vue做项目的一些经验,以此作为日常记录
第一小段:

1.问题:

route + vuex,在项目中遇到的是不同页面之间相互跳转,route会刷新数据,但是vuex不能记录最新的数值的问题;

2.解决方法:

主要是通过mapState(+必要时采取localStorage或者sessionStorage保存一个键值)来获取最新的属性,之后通过dispatch来分发action方法从而commit mutation 最后改变state的属性值(这是最基本的连环操作,哈哈);

3.还是直接上代码吧:简单,明了和复用

案例1.商品列表
 store 中:
// actions
const actions = {
    changeParam({commit},params){  //  修改参数
        commit(types.GET_NEW_PARAM,{ params });
    },
    getAllProducts({commit,state}){ // 获取所有车位列表
        axios.post(proApi.api.commonListApi,state.goodParam)
          .then((response)=>{
            Util.processRes(response,(responseData)=>{
                 let products = responseData.data;
                commit(types.GET_GOODS_LIST,{ products })
            },(responseData)=>{
              // todo
            })
        });
    }
}

// mutations
const mutations = {
    [types.GET_GOODS_LIST](state,{ products }){
        state.goodList = products;
    },
    [types.GET_NEW_PARAM](state,{ params }){
        for (var i in   state.goodParam) {
          for (var j in params) {
            if (i == j) {
              state.goodParam[i] = params[j];
            }
          }
        }
     }
  }
// 以上是strore中主要的点

在单文件.vue中处理

 mounted(){
      this.navTabIndex;  // 注意需要在首先渲染,否则没有实际的作用
    },
  computed:{
      ...mapState({
          "navTabIndex": function(state){ // 箭头函数会有this的问题
              let nowRoute = this.$route.name;  // 当前路由 
              this.switchPage(nowRoute);  // 根据路由修改请求参数
              this.$store.dispatch('changeParam', this.param); // 同步操作
              return state.goods.goodParam;  // 在计算属性中,返回最新请求参数
            }
      }),
    }
// 监听路由变化
    watch:{
        $route(val){
          this.switchPage(val.name); // 一个switch选择语句,判断当前路由,然后修该.vue中的this.param 请求参数
          this.$store.dispatch('changeParam',this.param);
          this.$store.dispatch('getAllProducts');
        },
      },
點擊查看更多內(nèi)容
5人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學(xué)

大額優(yōu)惠券免費領(lǐng)

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消