请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

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

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

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

正在回答

1回答

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

0 回复 有任何疑惑可以回复我~
  • 提问者 lee1949 #1
    谢谢老师的回复,我后来查了查,咱们那么写就是相当于把服务模块导入到了根模块中,所以其他模块都可以DI,是这意思吧。
    回复 有任何疑惑可以回复我~ 2017-09-27 23:42:59
  • 提问者 lee1949 #2
    非常感谢!
    回复 有任何疑惑可以回复我~ 2017-09-28 14:03:04
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信