有没有方便的方法来检查AngularJS中的DOM元素是否为$ $ compile`d?

时间:2014-06-03 03:21:40

标签: angularjs angularjs-compile

我试图将一些纯JavaScript库与AngularJS集成,我需要手动$compile一些DOM元素。我正在做这样的编译:

$compile(e.srcElement)($scope);

e.srcElement是我要$compile的DOM元素。

我想知道,如果有任何确定的方法来检查是否已经编译了给定的DOM元素。

我知道如果我在编译期间将一些数据属性附加到DOM,并尝试稍后检索它,那么这是可能的。我想知道的是AngularJS中是否存在任何现有方法。

谢谢!

1 个答案:

答案 0 :(得分:0)

在指令编译函数中,父编译已经编译完成。孩子们还没有。如果兄弟姐妹的优先级数量大于当前指令的优先级,则编译兄弟姐妹:

   compile: function (element, attr){
           element.children(); // not compiled
           elements.parents(); // compiled
           elements.siblings(); // compiled if priority > current directive priority.  If same, then not defined.
   });