我们过去必须providers在模块定义的数组中包含 Angular 服务。随着 Angular 的进步,我们现在主要使用装饰器providedIn中的属性。@InjectableAngular 编译器为我们做了很多很棒的事情,比如摇树,所以我们只需创建服务,使用providedIn就可以了。
我很好奇为什么不能对组件做同样的事情。目前,组件需要添加到declarations模块定义中的数组中。最新的 Angular 能够在没有entryComponents(动态创建 ng 工厂)的情况下创建动态组件,所以它不应该能够为服务做同样类型的事情providedIn吗?这意味着不必将组件放入declarations数组中,它会做与服务相同的事情吗?