由于 LocalStorage
速度较慢,我想使用 Providers
进行数据共享。那么您能否告诉我,由于 Ionic 3 移动应用程序内部的这种方法,我是否必须面对任何问题?
注意:提供者是单例
像这样声明它:
project.ts
@Injectable()
export class ProjectProvider {
project: Project
constructor((){}
}
在任何其他页面上需要时使用:
home.ts
constructor(private projectProvider: ProjectProvider){}
ionViewDidEnter() {
this.projectProvider.project = val;//after this I can use this anywhere
}
我用上面的方法代替了这个:
const project: Project = await this.storage.get('project');
在这里你可以看到我必须等到它检索。这是我的应用程序的一个问题,因为我的客户需要开发一个页面上几乎没有加载器图标的应用程序。那么我将不得不面对这种方法的任何问题吗?
最佳答案
如果用户将刷新页面(向下推页面将刷新),提供者将丢失数据,您可以将提供者用作单例,但它们不适合持久数据。使用提供程序在组件之间共享数据。
关于angular - 对于数据共享,我应该选择 Provider 还是 Local Storage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48763396/