使用和与不同控制器的指令通信

时间:2014-10-22 10:08:44

标签: javascript angularjs angularjs-directive angularjs-scope

我想创建一个类似于控件的指令。它应该可以从"任何地方实例化#34;我想从父作用域/控制器调用它的作用域。

一个非常简单的例子是:

我有一个名为myContactForm的特殊指令(可以在不同的地方和页面中使用)。现在这个myContactForm,在它的templace中,使用指令myEditControl。 myEditControl是,当你看模板时,只有一个输入和一个按钮,并且在范围内有函数" clear()"所以你可以删除输入中的任何内容以及其他功能。

现在当myContactForm中发生某些事情时(例如按下按钮或收到广播或其他什么)我想调用" clear()"在myEditControl里面。就像它是一个正常的控制。

怎么做?

我知道要求,但这只适用于父母,我必须知道使用myEditControl的指令的Controllername。相反,我希望任何视图/控制器都能够使用myEditControl。我不能要求myContactForm中的myEditControl-Controller,因为它是一个孩子而不是父母。

角度来解决这类问题的技术是什么?

我的想法是将一个回调或" myContactForm" -Scope传递给带有属性的myEditControl,以便myEditControl可以"注册"它本身在父节点和父节点上然后保存该控制范围以供以后引用和调用函数。虽然这看起来很丑陋......

0 个答案:

没有答案