【问题标题】:Angular 6 - Best way to implement complex templateAngular 6 - 实现复杂模板的最佳方式
【发布时间】:2019-06-13 14:34:51
【问题描述】:

我对 Angular 2.0+ 的世界还比较陌生,我正面临一个关于模板设计的问题。我确信有一种 Angular 方法可以做到这一点;我只是还没有找到明确的答案。

所以,我的想法是(见附图)我有红色组件,它必须包含在应用程序的许多部分中。红色组件的一些样式、输入和输出对于整个应用程序都是相同的。但是在红色组件内部必须嵌入三个组件,这些组件会根据红色组件的放置位置而有所不同。

例如,假设红色组件是详细信息页面的容器。如果放置在实体 A 的详细信息页面中,绿色组件将是地图,黄色组件将是图像,蓝色组件将是阅读更多按钮。所有这些组件都必须具有输入、输出和可能的引用,以便可以使用子视图对其进行操作。

如果红色组件放置在其他地方,那么这三个组件会有所不同。甚至可能只有 2 个,而不是三个组件。

是否有人知道如何设计红色组件以使其可重复使用并适合我的必需品?非常感谢,如果需要更多解释才能理解我的问题,请告诉我。

【问题讨论】:

    标签: javascript angular angular-components


    【解决方案1】:

    在这种情况下,您可以使用命名为 ng-content,您可以在其中将多个组件作为其容器数据并传递输入/事件/样式或您想要传递的任何内容 -

    <red-component>
    <yellow-component></yellow-component>
    <blue-component></blue-component>
    <green-component></green-component>
    </red-component>
    

    【讨论】:

    • 我们可以看到red-component HTML 模板可以做到这一点吗?
    • 应该,你可以传递与命名 ng-content 一样多的组件,并按要求显示
    • 抱歉,我的问题可能不太清楚。我想知道您是否可以在答案中展示如何在red-component 模板中定义命名的ng-content。在当前的答案中,我们只看到red-component 的使用方式,而不是它的定义方式。
    • @ConnorsFan 在这里阅读示例blog.angular-university.io/angular-ng-content/…
    猜你喜欢
    • 2018-07-11
    • 1970-01-01
    • 2018-05-19
    • 1970-01-01
    • 2022-01-11
    • 1970-01-01
    • 2016-06-14
    • 1970-01-01
    • 2015-10-24
    相关资源
    最近更新 更多