我确信这与许多其他“属性不存在类型”问题有关,但说实话,我已经尝试了他们的修复,但这对我不起作用......
我正在使用ionic2 / angular2和pouchDB构建应用程序。
pouchdb promise呼叫在提供商服务中,如下所示
loadUserDocuments() {
return new Promise(resolve => {
this.db.query('some view', {
include_docs: true
}).then((result) => {
this.myList = [];
result.rows.map((row) => {
if (some condition)
this.myList.push(row);
});
resolve(this.myList);
});
}).catch((error) => {
console.log("loadUserDocuments : Error : " + error);
});
}
当我从我的组件调用loadUserDocuments时,如下所示....它可以工作!!
updateHives() {
this.ds.loadUserDocuments().then((myList) => {
this.listToUI = myList;
});
}
UI得到更新,没有问题。
当我尝试遍历'myList'以将它们分成单独的列表时,问题就开始了......下面是抛出错误的代码
updateHives() {
this.ds.loadUserDocuments().then((myList) => {
myList.rows.map((row) => {
if (condition 1){
this.listOne.push(row);
} else if (condition 2) {
this.listTwo.push(row);
}
});
});
}
'rows'对象出现错误,即'void | {}'类型中不存在“属性'行'
我甚至尝试在代码的工作中添加另一个then子句,但同样,我的本地对象也变得无法迭代。
我试过读Nolan Lawson的https://pouchdb.com/2015/05/18/we-have-a-problem-with-promises.html,但我迷路了。
请帮忙。
谢谢, 埃尔维斯。