【发布时间】:2021-05-17 03:12:27
【问题描述】:
我正在尝试将数据从我的 API 传递到 Vue 中的 data 方法。
data(){
return{
name:""
}
},
methods: {
getData(){
useData.data("profile", this.route.params.id).then(function(r: any){
r.data;
});
}
},
created(){
this.name=this.getData();
}
我在我的模板中显示它是这样的:
{{name}}
问题是它不起作用。它没有显示任何错误,但也没有显示任何内容。
如果我将函数 getData() 更改为:
getData(){
return "123";
}
成功在模板中显示123。我相信这与承诺有关。
如果我尝试直接在函数 getData() 内为 name 赋值,我会收到以下错误:
Uncaught (in promise) TypeError: Cannot set property 'name' of 未定义
那么如何从 http 请求中获取数据并将其发送到data 方法?
【问题讨论】:
-
如果你想像你一样分配
name,你的getData方法需要return。 -
谢谢,但我试过了。没用。
-
因为它是一个承诺。返回值需要
await。
标签: vue.js ionic-framework promise