【问题标题】:How do you use nested component in Angular 2 final release如何在 Angular 2 最终版本中使用嵌套组件
【发布时间】:2017-03-01 22:11:35
【问题描述】:

在之前的 RC 版本中,我们使用指令标签来使用嵌套组件。但是在 angular 2 的最终版本中,他们已经从组件中删除了指令标签。现在,如果我想将一个组件放入另一个组件中,我该怎么办???

我看过一些帖子,其中您创建了一个用于对组件进行分组的模块,然后将该模块导入到应用程序模块中。但这是正确的做法吗??

请举例说明

【问题讨论】:

    标签: angular angular2-forms angular2-components


    【解决方案1】:

    基本上,您的想法是正确的。 Angular 将所有功能分组到模块中。一个模块定义了它拥有的组件和指令。因此,在组件模板中,您可以使用父模块(或当前模块导入的模块)中的任何其他组件或指令,而无需列出它。

    我建议您努力阅读Angular Modules 上的文档。它们包括详尽的解释和示例。

    模块是定义功能分区。基本上,Angular 的设计选择是将相同模块中的组件、指令、管道和服务视为同一个拼图的一部分。组件不打算在其模块之外使用。这就是为什么 Angular 会强制你将组件放在一个模块中,然后才能使用它,以及为什么如果你尝试在多个模块中声明同一个组件,Angular 会抛出错误。

    【讨论】:

    • 但是你不认为这样我们会失去与任何其他模块独立使用它的组件想法。 ???
    • 假设我创建了一个组件,用于在我的页面上显示一些由不同组件组成的配置文件。然后要在其他应用程序中使用这个组件,我还需要复制模块,或者我需要创建一个新模块来添加功能。???这也不会保留自我解释的组件,因为我的模块可以有更多的依赖关系。
    • @piyushanwekar 我添加了一段。组件不应该在其模块之外使用。如果您预计需要这样做,请将其设置为模块中的唯一组件,以便您可以将整个模块插入您希望使用的任何应用程序中。
    猜你喜欢
    • 2016-08-04
    • 2017-02-14
    • 2017-01-28
    • 2017-02-15
    • 1970-01-01
    • 2016-09-01
    • 1970-01-01
    • 2017-12-31
    • 2017-01-24
    相关资源
    最近更新 更多