我已在数据部分的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()
吗?