从带有for循环的方法访问Vue组件中的对象数组

时间:2019-02-06 06:13:24

标签: javascript vue.js vuejs2

我已在数据部分的Vue组件之一中初始化了空数组myArray。通过mounted()加载Vue组件后,我正在调用一个函数,该函数将处理一个Object,该对象随后会将其推送到myArray

我期望Vue应用程序的其他组件可以使用一组对象myArray: [{name: ... , number: ...}, {name: ... , number: ...}]

data(){
  return{
    myArray: [] // initialised empty array
  }
}, 
mounted(){
  this.loadFunction(); 
}, 
methods: {
  loadFunction(){
    // do some logic and get data to get array of JSON objects
    for (let i = 0; i < result.entities.length; i++) {
      let object = {};
      object.name = result.entities[i].name;
      object.number = result.entities[i].number;
      this.myArray.push(object);
    }
  }
}

我遇到以下错误:

  

错误:无法读取未定义的属性“ push”

不要认为我分配对象属性的方式有问题。由于某些原因,未定义myArray,这将在调用push时吐出错误。我通过数组定义或传递上下文this的方式是否有问题?这是使用错误的生命周期挂钩的问题,即使用created()吗?

0 个答案:

没有答案