vue-resource返回PromiseObj

时间:2016-09-21 16:14:12

标签: javascript promise vue.js vue-resource

如何在Ajax调用中访问响应数据?如果我记录response.text(),则会显示PromiseObj

控制台

PromiseObj
  context: undefined
  promise: Promise {status: "resolved", result: ")]}',↵{\"Result\":\"SUCCESS\",\"Data\":{\"mode\":\"DEV\"}}"}

代码

this.$http.post(endpoint, data, []).then((response) => {
    console.log(response.status);
    console.log(response.text());
}, (response) => {
    console.log(response.status);
    console.log(response.json());
});

1 个答案:

答案 0 :(得分:4)

应该使用then方法使用Promise结果值:

response.text().then(console.log)

您可以通过返回该承诺并链接到它来简化代码:

this.$http.post(endpoint, data, []).then(response => {
    console.log(response.status);
    return response.text();
}, response => {
    console.log(response.status);
    return response.json();
}).then(result => {
    console.log(result);
})