能否使用Angular app.component将应用程序设置写入本地存储?
我是否可以使用应用程序组件将设置写入本地存储,然后从其他组件访问设置能否使用Angular app.component将应用程序设置写入本地存储?,angular,Angular,我是否可以使用应用程序组件将设置写入本地存储,然后从其他组件访问设置 await docRef.get().then(doc => { localStorage.setItem("appAdmin", JSON.stringify(doc.data().appAdministrator)); localStorage.setItem("authorizeDomain", JSON.stringify(doc.data().authorizedDomain)); local
await docRef.get().then(doc => {
localStorage.setItem("appAdmin", JSON.stringify(doc.data().appAdministrator));
localStorage.setItem("authorizeDomain", JSON.stringify(doc.data().authorizedDomain));
localStorage.setItem("contactAdmin", JSON.stringify(doc.data().contactAdministrator));
localStorage.setItem("contactGroup", JSON.stringify(doc.data().appContactGroup));
});
在使用任何组件之前设置对象,而不考虑应用程序的入口点,可以考虑使用<代码> Appy初始化器< /C> > 应用程序初始化器:在初始化应用程序之前调用回调。全部的 注册初始值设定人可以选择返回承诺。全部的 返回承诺的初始值设定项函数必须在 应用程序已启动。如果其中一个初始值设定人未能 解析时,应用程序未启动
REF:
< P>在使用任何组件之前设置对象,不考虑应用程序的入口点,可以考虑使用<代码> Appy初始化器< /C> > 应用程序初始化器:在初始化应用程序之前调用回调。全部的 注册初始值设定人可以选择返回承诺。全部的 返回承诺的初始值设定项函数必须在 应用程序已启动。如果其中一个初始值设定人未能 解析时,应用程序未启动参考:解决问题的正确方法是向工厂提供
APP\u初始值设定项
令牌
例如:
@NgModule({
providers: [
{
provide: APP_INITIALIZER,
useFactory: appInitializerFactory,
deps: [/* Your dependencies */],
multi: true,
},
],
})
export class AppModule {}
export function appInitializerFactory(/* The injection of your dependencies, in the same order as above */) {
return () =>
new Promise<any>((resolve: any) => {
// Do your async work, call `resolve()` when done.
});
}
@NgModule({
供应商:[
{
提供:应用程序初始化器,
useFactory:appInitializerFactory,
deps:[/*您的依赖项*/],
多:是的,
},
],
})
导出类AppModule{}
导出函数appInitializerFactory(/*依赖项的注入,顺序与上面相同*/){
return()=>
新承诺或。解决问题的正确方法是向工厂提供APP\u初始值设定项
例如:
@NgModule({
providers: [
{
provide: APP_INITIALIZER,
useFactory: appInitializerFactory,
deps: [/* Your dependencies */],
multi: true,
},
],
})
export class AppModule {}
export function appInitializerFactory(/* The injection of your dependencies, in the same order as above */) {
return () =>
new Promise<any>((resolve: any) => {
// Do your async work, call `resolve()` when done.
});
}
@NgModule({
供应商:[
{
提供:应用程序初始化器,
useFactory:appInitializerFactory,
deps:[/*您的依赖项*/],
多:是的,
},
],
})
导出类AppModule{}
导出函数appInitializerFactory(/*依赖项的注入,顺序与上面相同*/){
return()=>
新承诺或。重要吗?反正你正在调用async方法。@ABOS我不确定。我是Angular的新手。我想可能只是因为组件中的代码是异步的,这并不意味着一个组件会等待另一个组件。Angular应用程序的初始值设定项可能就是你想要的。在线上有很多教程,请查看。这有关系吗?你是吗无论如何,我们仍在调用async方法。@ABOS我不确定。我是Angular的新手。我想可能只是因为组件中的代码是异步的,这并不意味着一个组件会等待另一个组件。Angular应用程序初始化器可能就是您想要的。大量在线教程,请查看。谢谢。这正是我一直试图找到的答案nd.我的三门关于Angular的课程都没有解释这一点。我成功地实现了你的答案。谢谢。谢谢。这正是我一直试图找到的答案。我的三门关于Angular的课程都没有解释这一点。我成功地实现了你的答案。谢谢。我同意。但是,我选择@tiagodws答案是因为我用了一个例子。我喜欢例子:)@Gregherner你选择了更好的答案,毫无疑问。我只是想知道为什么投反对票。好吧;)我同意。但是,我选择@tiagodws答案是因为他用了一个例子。我喜欢例子:)@Gregherner你选择了更好的答案,毫无疑问。我只是想知道为什么投反对票。一切都好;)