【发布时间】:2017-05-29 08:10:52
【问题描述】:
我想要实现两件事。两者都需要巧妙地使用组件。
首先,关于组件绑定的一般问题:在我看到的每篇文章中,模板中都使用了一个指令标签,以便以后绑定一个组件。但是,由于我的两个问题,我不能事先将指令放入模板中 - 相反,我需要动态地这样做。
我有一个“事物”列表。然而,“事物”只是父母,它有很多孩子——这意味着有多种类型的事物,每一种都有不同的价值。这让我为每件事都创建了一个组件:每个都有自己的模板。 但是,我也想显示这些东西的列表。不过,我事先并不知道它们:我是从服务器上获取它们的。在获得数据之前,我不知道它们的类型或数量。我现在想通过每次添加正确类型的组件来列出每个“事物”。如何正确添加绑定以动态加载组件?
我的用户可以通过使用不同的模式来“设计”他们的个人资料。生成的布局是从服务器获取的。这意味着,我不知道模态的数量或模态的类型。我现在如何才能正确地包含它们?
TL;DR 如何动态绑定组件,而无需为其各自类型设置适量的绑定?
【问题讨论】:
-
你就是不这样做,因为没有办法。 stackoverflow.com/questions/36325212/… 包含一段代码,演示如何以命令方式读取和写入值。我不知道您对 2 的意思是什么。您需要将组件静态添加到您的应用程序中。组件 Angular 不知道您何时构建您的应用程序无法添加。
-
@GünterZöchbauer 感谢您的回复。但是,如何解决我目前遇到的问题呢?关于 2:我将在一分钟内进行编辑以使其更清晰。另外:并不是 Angular 不知道我要添加的组件——我确实事先定义了它们。我只是事先不知道要使用 哪些 组件。所以,基本上:我定义了组件 X、Y、Z。服务器现在告诉我“按照我给你的值的顺序将 X、Z、X、X、Y、Z、Y 放入列表中”。
-
这就是我在第一条评论中链接到的答案。
标签: angular typescript dynamic binding load