我有一个指令可以转换一些HTML来提供一个虚假的上下文菜单。用法如下:
<div id="my-element">
My content
<context-menu get-offset="getOffset($event)">
<ul>
<li>
<a href="" ng-click="action()">{{ label }}</a>
</li>
</ul>
</context-menu>
</div>
这会将事件监听器绑定到#my-element
,右键单击会将context-menu
的内容显示给返回的$scope.getOffset
个偏移量。
一切正常,但插值字符串{{ label }}
未展开。假设$scope.label
的值为'ABC'
。您没有看到“ABC”,而是看到“{{label}}”。但是,ngClick似乎绑定正确。
请参阅此plunkr代码和&amp;演示:http://plnkr.co/edit/QDVAHkhrfsNpRcjTwCpM?p=preview
为什么会这样?
答案 0 :(得分:3)
事件不会触发$ digest循环。将此行添加到showContextMenu()
:
transcludeScope.$digest();
(你可以使用任何范围触发它,真的)