vuex 中輔助函數mapGetters的基本用法詳解 - WalkonNet

文章推薦指數: 80 %
投票人數:10人

mapGetters 輔助函數. mapGetters 輔助函數僅僅是將store 中的getter 映射到局部計算屬性:. 1、在組件或界面中不使用mapGetter調用映射vuex中的 ... Skiptocontent mapGetters輔助函數 mapGetters輔助函數僅僅是將store中的getter映射到局部計算屬性: 1、在組件或界面中不使用mapGetter調用映射vuex中的getter   1.1調用映射根部store中的getter /** *store.js */ importVuefrom'vue' importVuexfrom'vuex' Vue.use(Vuex) exportdefaultnewVuex.Store({ state:{ stateHello:1 }, getters:{ gettersHello:(state)=>{ returnstate.stateHello*2 } }, mutations:{ mutationsHello(state,val){ console.log("val",val);//2 state.stateHello+=val } }, })   流程:在test.vue界面中點擊調用changeVal(),changeVal方法通過commite傳參val並調用store.js中的mutationsHello()方法,mutationsHello方法修改state中的stateHello的值,在getters的gettersHello中監聽stateHello的值,stateHello的值的改變觸發瞭gettersHello,在test.vue界面computed中計算瞭store.getters.gettersHello,這個就將gettersHello映射到store.gettes.gettersHello的值,通過模板將gettersHello渲染到dom中,同時由於gettersHello的改變也能觸發watch中gettersHello,實現對store.getters.gettersHello數據改變的監聽。

  1.2調用映射modules模塊store中的getter /** *模塊vuexTest.js */ exportdefault{ namespaced:true, state:{ stateHello:1, }, getters:{ gettersHello:(state,getters,rootState,rootGetters)=>{ console.log("state",state); console.log("getters",getters); console.log("rootState",rootState); console.log("rootGetters",rootGetters); returnstate.stateHello*2 } }, mutations:{ mutationsHello(state,val){ console.log("1111"); console.log("val",val); state.stateHello+=val } }, actions:{ } }   需要註意的地方是在computed中計算映射模塊中的getters的方法時調用方式與獲取模塊中的state中的數據不同 this.$store.getters['vuexTest/gettersHello'] 2、在組件或界面中使用mapGetter調用映射vuex中的getter   2.1調用映射根部store中的getter /** *store.js */ importVuefrom'vue' importVuexfrom'vuex' Vue.use(Vuex) exportdefaultnewVuex.Store({ state:{ stateHello:1 }, getters:{ gettersHello:(state)=>{ returnstate.stateHello*2 } }, mutations:{ mutationsHello(state,val){ state.stateHello+=val } }, })   2.2調用映射根部store中的getter /** *vuexTest.js */ exportdefault{ namespaced:true, state:{ stateHello:1, }, getters:{ gettersHello:(state,getters,rootState,rootGetters)=>{ console.log("state",state); console.log("getters",getters); console.log("rootState",rootState); console.log("rootGetters",rootGetters); returnstate.stateHello*2 } }, mutations:{ mutationsHello(state,val){ console.log("1111"); console.log("val",val); state.stateHello+=val } }, actions:{ } } 這三種形式   ...mapGetters(["vuexTest/gettersHello"]),//數組形式 ...mapGetters("vuexTest",{//對象形式 gettersHello:"gettersHello" }), ...mapGetters("vuexTest",{ gettersHelloOther:"gettersHello"//對象形式下改變映射 }), 到此這篇關於vuex中輔助函數mapGetters的基本用法詳解的文章就介紹到這瞭,更多相關vuexmapGetters使用內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet! 推薦閱讀: Vuex總體案例詳解 vuex中Getter的用法詳解 深入理解Vuex的作用 vuex命名空間的使用 一文輕松理解Vuex 文章導覽 PreviousPostJava單元測試Mockito的使用詳解NextPostPHP中使用extract函數 發佈留言取消回覆發佈留言必須填寫的電子郵件地址不會公開。

必填欄位標示為*留言顯示名稱* 電子郵件地址* 個人網站網址 在瀏覽器中儲存顯示名稱、電子郵件地址及個人網站網址,以供下次發佈留言時使用。

Searchfor: Search 近期文章 巨蟹座2022感情大預言,巨蟹座2022年感情順利嗎 據說天秤座2022年會很慘,具體體現在哪幾方面 蘇珊大媽天秤座2022年4月運勢詳解 蘇珊大媽天蠍座2022年4月運勢詳解 蘇珊大媽射手座2022年4月運勢詳解 蘇珊大媽摩羯座2022年4月運勢詳解 蘇珊大媽2022年4月星座運勢詳解 2022坐等發財星座女,開運物品是什麼 2022年會和前任聯系的星座,兩個人能夠有所發展嗎 最新2022年星座學業運勢,12星座學業會怎麼樣呢 標籤Android asp.net C# C語言 Django Docker Go golang IDEA java JavaScript jQuery js linux MyBatis MySQL net OpenCV pandas php postgresql pycharm python pytorch React redis R語言 Spring Springboot SpringCloud SpringMVC Unity vue 十二星座 原神 天蠍座 微信小程序 攻略 星座知識 星座運勢 白羊座 護膚 軟件教程 雙子座 雲頂之弈



請為這篇文章評分?