替换并转换指令的链接部分

时间:2014-10-27 08:18:42

标签: angularjs directive

我有一个指令需要有条件地替换放置它的节点;有时它会取而代之,有时它会保留原样。

这是我在非替换情况下所做的事情:

transclude(scope, function(clone){
            element.append(clone);
        });

这很好。

我希望能够将它放在一个节点上,它将替换为模板,并将其转换。我该怎么办?

以下几乎似乎有效:

 var node= angular.element('<a href="" role="button"></a>');

 transclude(scope, function(clone){                
   node.append(clone);
   element.replaceWith($compile(node)(scope))
 });

1 个答案:

答案 0 :(得分:0)

使用outerHTML替换:

element[0].outerHTML = '<a href="" role="button"></a>';

并编译此模板以转发它。

<强>参考