如何操作ember模型钩子中从findAll函数返回的db内容?

时间:2017-03-17 12:51:11

标签: javascript ember.js couchdb pouchdb

findAll的返回值是一个未知的mixin。例如在路由器xyz.js

model(){
a = this.store.findAll('food-track');
return a
}

我们如何操纵或从模型中提取数据,如

model(){
a = this.store.findAll('food-track');
some_data = a['_id'];
some_more_data = a['name'];
return some_more_data
}

但是a不是我希望它的格式,我无法执行任何这样的功能?顺便说一下,数据来自couch / pouchdb。

2 个答案:

答案 0 :(得分:1)

findAll会返回PromiseRecordArray会被解析为model(){ return this.store.findAll('food-track').then((result) => { //here you can forEach method to iterate and to filter use filterBy //Use objectAt(index) to retrieve object and use get and set //dont forget to the return transformed result. return result; }); } ,扩展ArrayProxy,因此您可以使用ArrayProxy中的所有可用方法。

npm install -g regreplace

答案 1 :(得分:1)

我同意kumkanillam的回答:findAll会返回一个数组,所以你必须迭代它。

此外,根据您的需求,您还可以使用计算属性来操作模型属性。以下是来自Ember的docs