1 回答
TA贡献1868条经验 获得超4个赞
执行此操作的标准方法是data在模板中显示属性。
<span class="symbolTicket">
{{ ticket }}
</span>
data () {
return {
ticket: null
}
}
然后从created钩子加载值:
created () {
this.getTicket()
},
methods: {
getTicket () {
return axios.get("http://localhost:2000/" , {
params: {
foo: 'SELECT * FROM eur_usd WHERE primary_key = 2;'
}
})
.then(response => {
const ticket = response.data.ticket;
// Update the data property
this.ticket = ticket;
console.log(ticket);
return ticket;
})
.catch(function (error) {
console.log(error);
});
}
}
该方法getTicket正在向服务器发出异步请求,因此无法ticket直接返回。它所能返回的只是相应的承诺。模板需要同步的值,所以依赖返回值是getTicket行不通的。
您可能还需要处理ticketis的情况null。在初始呈现期间,对服务器的请求不会完成,因此ticket仍将是null.
如果您喜欢使用async/await该getTicket方法可以简化,但它不会改变上述的整体流程。您仍然需要一个单独的data属性来保存结果。
添加回答
举报