服务模块导入核心模块之后为什么可以直接被其他模块使用

来源:5-2 常见操作符(一)

lee1949

2017-09-27

核心模块中只导入了服务模块,并没有导出服务模块,其他模块是如何使用到服务的。比如登录模块中没有quote服务,会去上层(根模块)中找,根模块中也没有导入服务模块啊?。是因为那个forRoot?

还有与之相似的啊app-router某块,在核心模块中导入了一次,为什么又要在根模块中导入。

写回答

1回答

接灰的电子产品

2017-09-27

providers 提供的要注册到 DI 框架的啊,模块中 providers 默认要注册到根 DI 中。就像你在 appmodule 中导入 Http 之后,在所有的组件的 constructor 中都可以注入对吧。而 router 模块之所以需要在 core 中导入,是因为我们在 sidenav 中用到了 routerLink 指令,这个指令是 router 模块提供的。而组件和指令不是在 DI 中注册的,所以需要导入

0
2
lee1949
非常感谢!
2017-09-28
共2条回复

Angular打造企业级协作平台,让你在Angular领域中出类拔萃

全网首个介绍官方 Material 组件库用法与 Redux 在 Angular 中的应用

998 学习 · 536 问题

查看课程