Javascript 从js promise获取数据
我正在执行一个返回承诺的api调用。调用工作正常,但我想处理承诺中包含的数据。这是我的电话:Javascript 从js promise获取数据,javascript,ember.js,promise,Javascript,Ember.js,Promise,我正在执行一个返回承诺的api调用。调用工作正常,但我想处理承诺中包含的数据。这是我的电话: let promiseArray = this.get('store').query('member', {query: term, option: this.get('option')}); promiseArray.then(members => {console.log(members); }); let var= members; console.log(var);
let promiseArray = this.get('store').query('member', {query: term, option: this.get('option')});
promiseArray.then(members => {console.log(members);
});
let var= members;
console.log(var);
我的问题是,它不返回我的模型数组,即成员,也不返回第二个显示未定义的成员,它返回一个包含大量元数据的对象,也返回数组,但包含一些元数据
如何简单地获取阵列?您可以使用
async
wait
来实现您的目的
const promiseFunc = () => {
// Return the promise and await this inside a async function
return this.get('store').query('member', {query: term, option: this.get('option')});
}
const asyncFunc = async () => {
const value = await promiseFunc();
console.log(value);
}
asyncFunc();
这回答了你的问题吗?你需要做的是在then函数内部。我想得到数组成员以便进行相同的处理,但我得到的是一个包含大量元数据的对象,在其中我可以找到我的数组。如果你在异步函数外部进行控制台操作,那么这应该是未定义的。你必须在异步函数内做任何你想做的事情。不是在异步函数外,而是在异步函数内,我正在取消定义。我忘记了返回,它可以工作,但我仍然得到一个包含大量元数据的对象,而不仅仅是从后台返回的一个数据数组。你能分享你得到的输出吗?余烬数据添加元数据-这还不错,只是保留记录而已。你可以忽略它。你运行的任何操作(映射、筛选、forEach)都将在原始数据上运行。您还可以调用.toArray()仅获取模型。