0

我想通过Typescript在Angular2中实现以下功能:
我想要一个代表工具提示的指令/组件。我知道如何做到这一点,所以没有问题。我希望能够将工具提示添加到我的网页上的任何HTML元素。这也不是一个大问题。我可以使用类似的方法,如this one在Angular2中动态添加工具提示

但现在我有以下情况:
我已经有组件,它们是动态加载的(即带有按钮,输入字段等的表单)。但现在说我想让这些组件之一有一个工具提示。我可以将一个工具提示指令或组件添加到他们的所有HTML模板中,但这似乎对我来说不是一个非常干净的解决方案。即如果我想象我可能有多个可以添加到其他组件的更小的指令/组件。然后,我需要将所有这些指令/组件添加到我可能在某些时候使用它们的所有组件,而这似乎很麻烦。
我可以配置这些表单组件,也可以扩展配置,所以最好的做法是为每个组件配置一个可选的工具提示配置,如果设置了此选项,则动态添加工具提示。

但我不知道如何在不包含所有这些组件中的所有组件的情况下,可以动态创建工具提示,如上面链接的方法。

所以我的问题是:这怎么能实现?

回答

-1

您的指令选择器应该像'cool-button:not(a)'。如果是这样,那些有'酷按钮'类的组件将自动开始工作。一旦你准备好了你的指令,请在根组件或根模块注册。使用此伪指令名称作为属性

+0

对不起,但我担心您的答案中有一部分丢失。另外:你能解释一下如何使用指令动态地添加组件?从文档来看,这似乎不起作用,因为你不能在指令中拥有工厂。 – M0rgenstern