【发布时间】:2021-05-11 17:23:37
【问题描述】:
我正在开发一个 Vue.js 项目,我正在尝试运行一系列相互依赖的承诺。为了使这个示例简单,我已经删除了除一个之外的所有内容,并将其余部分替换为 console.log,它应该输出我尝试访问的值,然后稍后使用。如果我可以让这个例子工作,那么剩下的只是重复它。
createBuilding: function() {
return new Promise((resolve, reject) => {
if(this.building === 'New building') {
this.$store.dispatch('newBuilding', {
address: this.address,
number_units: this.number_units
})
.catch(err => {
reject(err)
})
resolve(this.$store.getters.buildingID)
} else {
resolve(this.building)
}
})
},
onComplete: async function() {
let buildingID = await this.createBuilding()
console.log(buildingID)
alert('Success');
},
实际结果:
我看到 console.log 以 undefined 触发,然后警告和等待的 promise/function 显示在 vue 开发工具中。
我怎样才能得到这个,以便我可以得到 createBuilding 方法的结果以与我的其他方法一起使用?
【问题讨论】:
标签: javascript vue.js vuex