angular里forRoot的作用
2024-09-04 15:35:51
模块A是这样定义的
@NgModule({
providers: [AService],
declarations: [ TitleComponent ],
exports: [ TitleComponent ],
})
export class A {}
如果有惰性模块lazyModule导入模块A,那么会生成子注入器将AService重新生成
这时如果想将AService变成全局唯一的,那么在lazyModule导入的时候就不要导入providers而只导入TitleComponent
forRoot这时就有用武之地了
改写A
@NgModule({
providers: [],
declarations: [ TitleComponent ],
exports: [ TitleComponent ],
})
export class A {
static forRoot() {
return {ngModule: A, providers: [AService]};
}
}
在appModule中使用A.forRoot导入A模块
@NgModule({
imports: [A.forRoot()]
})
export class AppModule {}
在lazyModule中正常导入A模块
@NgModule({
imports: [A]
})
export class LazyModule{}
最新文章
- [备查]使用 SPQuery 查询 ";Person or Group"; 字段
- iOS动态部署之RSA加密传输Patch补丁
- KinderEditor编辑器使用
- centos6.4 64位下安装nfs文件共享系统
- 企业级的响应式设计(Responsive design at enterprise level)译
- Windows Server 2008R2配置MySQL Cluster并将管理节点和数据节点配置成windows服务
- httpcomponents-client-4.4.x
- http 安全验证
- 整理:20个非常有用的Java程序片段
- 利用Xtrabackup在不停机的情况下备用数据库迁移
- 201521123077 《Java程序设计》第8周学习总结
- 从零起步学python计划及感想
- 学习JavaScript最佳实践方法
- Linux学习笔记之MySql的安装(CentOS)
- 一个空格引起的错误。 python
- Windows下的pydoc
- Oracle 11g透明网关连接Sqlserver
- Javascript百学不厌 - 尾递归
- ASP.NET MVC 母版页
- Django项目----快速实现增删改查组件(起步阶段!!!)
热门文章
- Python机器学习库sklearn的安装
- Oracle 架构
- Hibernate项目环境搭建
- java.lang.RuntimeException Unable to instantiate application Caused by: java
- wcf datetime json format
- uploadify 图片上传
- 异步http请求的实现
- Python下ImportError: DLL load failed: 找不到指定的模块
- 搭建Jquery+SpringMVC+Spring+Hibernate+MySQL平台
- 1.JDBC基础