【问题标题】:Vuex: Lifecycle hooksVuex:生命周期钩子
【发布时间】:2020-02-13 20:02:48
【问题描述】:

我在vuex文件中有如下数据结构:

state:{
    info:[
      {
        name: 'Some field 1',
        value: '',
        pattern: /.+/,
        //status: ''
      },
      {
        name: 'Some field 2',
        value: '',
        pattern: /.+/,
       // status: ''
      }
    ]

我希望每个对象都有一个字段status: ''。但我不想复制代码。在 Vue 组件中我为此写了:

beforeMount(){ 
            // add new fuild 
        }

但是这种方式在 Vuex 中是行不通的。

beforeMount(){  
    console.log('does not work');
    for (let i = 0; i < this.info.length; i++) {
        this.$set(this.state.info[i], 'status', '');
    }
  }

如何动态添加新字段到状态中?

【问题讨论】:

    标签: vue.js vuex


    【解决方案1】:

    在突变中,只需执行以下操作:

      state.info = state.info.map(x => ({
      ...x,
      status: ''
    })
    

    【讨论】:

      猜你喜欢
      • 2020-01-15
      • 2017-11-22
      • 1970-01-01
      • 2019-10-01
      • 2018-03-13
      • 2018-08-30
      • 2016-08-26
      • 1970-01-01
      相关资源
      最近更新 更多