vuex 对象嵌套属性的修改 mutations set 很方便的写法
生活随笔
收集整理的這篇文章主要介紹了
vuex 对象嵌套属性的修改 mutations set 很方便的写法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
需求:一個對象
const state = {user: {verify: {state: 0}} }我需要使用類似this.set({ 'user.verify.state': 1 })這種寫法直接獲取或修改state[user.verify.state]的值。不知道別人怎么寫的,我的寫法如下:
const mutations = {set(state, params) {Object.keys(params).forEach(key => {// 需要替換的值const val = params[key];const arr = key.split(".");if (arr.length > 1) {let obj = state;while ((arr.length - 1) && (obj = obj[arr.shift()]));obj[arr[0]] = val} else {state[key] = val}})} }這樣想要修改state中任意一個對象,就非常方便了。
總結(jié)
以上是生活随笔為你收集整理的vuex 对象嵌套属性的修改 mutations set 很方便的写法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 教你如何在微信浏览器下载APP
- 下一篇: mpvue 从零开始 女友的收纳盒 6