动态数组推送的vue数组反应性

时间:2018-10-24 13:07:00

标签: vue.js vuejs2

我想要一个二维数组,该数组将具有动态键和对象数组,如您所见,我尝试过此操作。$ set和Vue.set到目前为止没有成功,

data() {
rep_recs: [] , // I want this array reactive..so I can display a table
recs:[] // actual data
},
created() {

    while(cond) {
                   //..some code
                   var y_m_key = `${Y}-${M}`

                   //  Vue.set(this.rep_recs, y_m_key,  [])
                   // this.$set(rep_recs, y_m_key,  [])
                   this.rep_recs[y_m_key] = []


                    for (var i=0; i<this.recs.length; i++) {
                        var rec = this.recs[i]
                        this.rep_recs[y_m_key].push(rec) //this works but not reactive
                    }
    }
}

1 个答案:

答案 0 :(得分:1)

这应该对您有用

var rec = this.recs[i]
this.$set(this.rep_recs, y_m_key, [
    ...this.rep_recs[y_m_key],
    rec
]);

这每次都会创建一个新的数组,这应该可以解决反应性问题