Angular:获取编译元素的范围

时间:2015-10-13 17:05:17

标签: javascript angularjs

我们说我有一个directive,传入的attribute是" contextMenuId。"

在这个指令中我现在执行:

contextMenu = $('[id*="' + iAttrs.contextMenuId+'"]');

...或

contextMenu = angular.element(document.querySelector('[id*="' + iAttrs.contextMenuId+'"]'))

如果这些不做同样的事情,如果有人能告诉我差异,我会很高兴,但这与我的回答是分开的。

现在,让我们来看看contextMenu

<ul id="exampleContextMenu" context-menu-defs="contextMenuDefs" ></ul>

我想从前面提到的指令访问数组contextMenuDefs,但这是来自我无法访问的完全不同的scope

我可以以某种方式访问​​scope contextMenu在我的指令中编译的Sidekiq吗?谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用get scope其​​他元素:

angular.element("<selector as jquery>")).scope();

在你的情况下:

var scopeOuther = angular.element('[id*="' + iAttrs.contextMenuId+'"]')).scope();