【发布时间】:2019-11-03 07:36:48
【问题描述】:
有以下用例:
-1- 我在模块 1 中有一个指令(用于拖动的指令)
-2- 该指令有几个来自组件的输入 (@Input()) 属性
该指令与模块 1 中的组件完美配合。 问题在于指令何时应用于模块 2 中的组件。
我完全了解有关模块的导入导出机制: 模块 2 中的组件被声明并导出。
模块 1 导入模块 2。组件在模块 1 中可用。它被正确渲染。应用指令后 - 一切都恢复正常。但是由于该指令在应用时具有多个 @Input() 属性,因此会发生以下错误:(请原谅我的小字体!)
这是组件模板:
正如我所提到的 - 问题在于何时应用指令的属性! 您能解释一下在这种情况下出了什么问题吗 - 组件导出为 在文档中描述。模块 2 是从模块 1 导入的,但这还不够。
【问题讨论】:
-
它是否也抱怨绑定“appDraggable”?你能发布你的指令代码吗?
-
模块 2 是否导入 1?
-
@itdoesntwork - 不,导入方向相反 - 模块 1 导入模块 2
-
@Freddy - 这是指令的代码jsfiddle.net/virto/kf6azn4e/1。我没有应用一个工作示例,因为这个问题可能很简单。而且正如我上面提到的 - 当指令在不属于输入属性的情况下应用时没有任何抱怨。
-
既然指令在模块 1 中并且在模块 2 中存在的组件中使用,那么 2 不应该导入 1 吗?
标签: angular angular2-directives angular-directive angular-components angular-module