在我的应用程序中,我使用 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
方法 interlly 调用dbQuery
查询一个 sqlite 数据库。
此外,该query
方法在我的应用程序中被多次调用。所以我想queryString
在相同的时候全局缓存结果。
换句话说,我希望该query
方法通过返回先前缓存的值来避免在使用之前已调用dbQuery
的参数调用时再次调用。queryString
不确定这是否相关:我的query
方法存在于 Angular 单例服务中。