当我搜索Google并发现所有文章都在vue的生命周期中告诉我时,我很困惑,因为“计算”早于“创建”,但是在我的代码中,我得到了结果2 在结果1之前,该如何解决?
computed: {
options() {
const imgData = {
img: this.modifyData,
fixedNumber: this.ratio
}
console.log(1)
return Object.assign({}, this.defaultOptions, imgData)
}
},
watch: {
modifyData(nval) {
// nothing to do yet
}
},
created() {
console.log(2)
},
...
更新: 'this.modifyData'来自axios.get(...),因此一开始它是不确定的,尽管我已经解决了这个问题,但是仍然困惑为什么结果2会比结果1早?
答案 0 :(得分:0)
初始化vue实例后,将运行created
函数。这就是为什么您看到2
的原因。计算属性的值稍后注销1
的原因是计算属性是惰性的,这意味着直到需要它们时才创建它们的值。