如何获取编译指令来侦听其范围之外的变量?

时间:2015-03-31 18:25:31

标签: javascript angularjs

http://plnkr.co/edit/QMrrDycuMyEG7cJkCB5f?p=preview

在页面的MainCtrl范围内,我们定义了一个变量:$scope.listen

在那之下,我有一个名为titleSetter的指令,它有一个属性title,它正在监听listen变量。它正确更新。

在那之下,我有另一个名为listeningComponent的指令,它的工作也是听取listen变量,并且它有一个范围变量listenertext,就像{ {1}}指令,已将titleSetter传入其中。

在那之下,我有一个舞台,旨在将指令编译成一个小舞台区域。在其中,有一个listen div,这是编译所在的位置。该指令有一个链接函数,可以将#stage编译成它。

继续在上面的框中键入内容,该框绑定到主页面的listeningComponent变量。一切都将随之更新......差不多。正如你在Plunker中看到的那样,listen在编译成listeningComponent时无法收听stage变量。

如何让它听取该变量?

1 个答案:

答案 0 :(得分:1)

似乎你忘了在舞台范围内定义听,即只是 js中为listen : '=',html中为listen="listen"

http://plnkr.co/edit/2BmXDHjINNxaOXy6R7Yb?p=preview