我希望在编译之前获取指令的html内容。
以下是一个例子:
<my-directive>
<ul>
<li ng-repeat="item in items">{{item.label}}</li>
</ul>
</my-directive>
我想获取my-directive
的所有内容并将其从中移除并在其他地方使用它(不在指令内部)
换句话说,我希望能够访问指令DOM,进行一些更改,然后进行编译。
答案 0 :(得分:4)
如果你想在Angular编译之前获取指令内容,那么你需要使用该指令的编译函数:
app.directive('myDirective', function() {
return {
compile: function(tElement) {
var html = tElement.html();
console.log(html);
// return link function if needed
return function(scope, element) {
console.log('link function');
}
}
};
});