组件可注射?

Component as Injectable?

我正在尝试构建我自己的 Modal 组件,我将能够在我的 Angular2 应用程序中重复使用它。我正在考虑不同的方法,我想知道是否可以创建兼作 @Injectable@Component?我正在考虑这个,因为我想为 Modal 构建一个模板,并将其保存在一个地方。

谢谢

组件默认可注入@Component()(或@Directive())包括@Injectable()

不要期望获得注入组件的特定实例。这适用于 constructor(@Host() private parentComponent) 的例子,其中 DI 查找仅限于父注入器到宿主元素的注入器。

通常用于您的用例 DynamicComponentLoader 只接受组件的类型,而不是实例。依赖注入只会创建组件的实例 class 但不会创建关联视图的实例。