angular - 在 Angular 中动态配置 Firebase 环境
问题描述
我的移动应用程序中有一个数据列表,对于每个数据,我可以有不同的 firebase 配置文件。要求是,当我点击任何数据时,它会向我们的服务器发出请求并从那里提取 firebase 配置。
一旦配置可用于移动应用程序,它将使用此配置与 firebase 连接,然后检索数据并执行一些操作。
有可能实现这一目标吗?
或者更具体地说,我可以在我的构造函数中或在 mycomponent.component.ts 中的 ngOnInit() 中执行 AngularFireModule.initializeApp(environment) 而不是在 myModuleName.Module.ts 中执行它。
解决方案
通过这样做AngularFireModule.initializeApp(environment)
,你做了两件事:
- 使用您的环境变量初始化 AngularFire 模块
- 导入模块
因此,您至少需要将导入部分保留在模块中。也许您可以检查 firebase 模块是否允许在导入后进行初始化,这意味着:
- 导入模块(在一个模块中)
- 稍后(当您获得配置时)“初始化”Firebase 模块
如果这不可能,我建议延迟加载您的 firebase 模块: https ://angular.io/guide/lazy-loading-ngmodules
注意:由于您需要初始化 firebase 模块,因此您可能需要将 Firebase 模块包装在标准模块中。
推荐阅读
- laravel-5 - 如何在 Laravel 中手动将 IP 设置为请求对象进行测试
- wpf - 如何将 ProgressBar 最大值减值绑定到 WPF 中的文本块
- linux - 每次作业运行后,詹金斯都会继续关闭
- java - JAVA(Selenium)中的for循环通过cssSelector查找元素
- sql - sql检测有向图中的循环
- javascript - 如何在升级文件夹中使用 javascript 文件?
- flutter - 如何在不重新渲染整个屏幕的情况下在屏幕上加载更多数据?
- php - Wordpress 获取帖子类型,仅限自定义帖子类型
- c# - Autofac注册通用存储库,其中T不是类
- mysql - Laravel Eloquent:如果行不存在则返回一些值