【发布时间】:2020-06-26 06:56:18
【问题描述】:
在我的应用程序中,我使用 rxjs,并且我有一个看起来像这样的方法:
query<T extends TableRow>(queryString: string, silent = false): Observable<T[]> {
return this.sqliteService.dbQuery<T>(queryString).pipe(
tap(val => {
if (this.configService.debugMode && !silent) {
console.log(`\n${queryString}`);
console.log(val);
}
})
);
}
我的 query 方法内部调用 dbQuery 来查询一个 sqlite 数据库。
另外,query 方法在我的应用程序中被多次调用。所以我想在queryString 相同时全局缓存结果。
换句话说,我希望 query 方法在使用之前已调用的 queryString 参数调用时避免再次调用 dbQuery,方法是返回先前缓存的值。
不确定这是否相关:我的 query 方法存在于 Angular 单例服务中。
【问题讨论】:
标签: angular typescript rxjs rxjs6 rxjs-observables