Mutation

需要遵守的響應規則

1 .最好提前在store中初始好你需要的屬性
2 .在對象上添加新屬性時,這個沒遇到
3 .使用常量代替mutation事件類型,可以方便其他代碼檢查工具發揮作用,同時放在單獨的文件中可以讓你的代碼合作者對整個app包含的mutataion一目了然,便于維護
4 .Mutation必須是同步函數

1 .store.commit('add') 也就是說,執行完此函數之后,由add導致的狀態改變必須在此刻完成
2 .在mutation中混合異步調用會導致你的程序非常難調試,特別是同時有多個回調來改變的狀態
3 .實際上,任何在回調函數中進行的狀態都是不可追蹤的
4 .

5 .組件中提交mutation

1 .this.$store.commit('xx')
2 .mapMutation 輔助函數映射一下,然后當成普通的函數使用this.add

...mapMutations([
      'increment', // 將 `this.increment()` 映射為 `this.$store.commit('increment')`

      // `mapMutations` 也支持載荷:
      'incrementBy' // 將 `this.incrementBy(amount)` 映射為 `this.$store.commit('incrementBy', amount)`
    ]),
    ...mapMutations({
      add: 'increment' // 將 `this.add()` 映射為 `this.$store.commit('increment')`
    })

//其實可以這樣寫,自己拆分一下mapMutations
add:function(){return this.$store.commit('add')}

6 .別的文件提交

vuex.commit('add',n)
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Mutation 更改Vuex的store中的狀態的唯一方法是提交mutation。Vuex中的mutation非...
    小冕閱讀 703評論 0 0
  • VUE Vue :數據驅動的M V Vm框架 m :model(后臺提供數據),v :view(頁面),vM(模板...
    wudongyu閱讀 5,418評論 0 11
  • 更改 Vuex 的 store 中的狀態的唯一方法是提交 mutation (1) 提交載荷 你可以向 store...
    __越過山丘__閱讀 1,118評論 2 0
  • 寫在前面 上一講「Vuex 旗下的 State 和 Getter」,告訴了我們怎么去使用倉庫 store 中的狀態...
    大宏說閱讀 29,447評論 11 89
  • 姓名:韓文祥 單位:上海晉名實業有限公司 六項精進361期【日精進打卡第33天】 【知~學習】 背誦《六項精進》大...
    祥子oboz閱讀 100評論 0 0