我想在 root 页面中显示一些项目(来自SqLite
数据库)。然而,当我尝试检索这些项目时,它需要太长时间(例如1分钟),即使只有1条记录。
PS:首次发生在 root 页面和 ONLY ,换句话说,如果我尝试渲染<再次强> root 页面,它会非常快。
这是我的代码:
服务
all(): any {
return this.storage.query('SELECT * FROM table');
}
网页:
import {Component} from '@angular/core';
import { SomeService } from 'path/service';
export class HomePage {
private items: Array<any>;
constructor(private service: SomeService) {
this.service.all().then(response => {
this.items = response.res.rows;
});
}
这是一个已知问题还是什么?
任何帮助都将不胜感激。
答案 0 :(得分:0)
尝试使用Observables:
<强>服务强>
import { Observable } from 'rxjs/Observable'
[...]
all(): Observable<any> {
let allItemsObs = Observable.create(observable => {
observable.next(this.storage.query('SELECT * FROM table'));
})
return allItemsObs
}
网页:强>
constructor(private service: SomeService) {
this.service.all().subscribe(response => {
this.items = response.res.rows;
});
}