Angular:获取元素被编译时使用的作用域
Angular: Getting the scope that an element was compiled with
假设我有一个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
从我的指令内编译?谢谢!
可以使用
angular.element("<selector as jquery>")).scope();
在你的情况下:
var scopeOuther = angular.element('[id*="' + iAttrs.contextMenuId+'"]')).scope();
相关文章:
- 监视函数从服务返回不起作用,但作用域函数起作用
- 将作用域存储在JSON中
- 从控制器继承了隔离的作用域以生成可重用的指令
- 从ng模板访问作用域
- 调用私有作用域
- 对父作用域的指令更新延迟了一步
- 正在$rootScope上达到控制器作用域$在内部控制器上
- 两个指令创建新的继承的和隔离的作用域-元素得到哪个
- 这两个关于 JavaScript 作用域链的例子有什么区别?
- 在具有命名作用域的自定义Polymer元素中隐藏表行
- AngularJS指令隔离作用域
- Angularjs:修改js中的作用域,稍后在页面中使用
- 访问多个指令的隔离作用域
- AngularJS-$编译一个元素并将作用域传递给它
- Angular:获取元素被编译时使用的作用域
- Coffeescript一直在函数作用域之外编译缩进的代码
- 由babel编译的ES6中的块作用域
- 像Rhino一样,对多个作用域编译一次
- 具有动态作用域编译的动态模板
- 访问已编译指令的隔离作用域