Сообщение от Shitbox2
|
А если на элементе несколько директив? Они по второму разу перекомпилятся, либо придется велосипедить.
|
"priority: 1000" и "terminal: true" обрывает сборку остальных директив в первой итерации, а в линке компилится все остальные директивы.
app.directive('myDir', function ($compile) {
return {
restrict: 'A',
replace: false,
terminal: true, //this setting is important, see explanation below
priority: 1000, //this setting is important, see explanation below
compile: function compile(element, attrs) {
element.attr('tooltip', 'example');
element.removeAttr("my-dir"); //remove the attribute to avoid indefinite loop
return {
pre: function preLink(scope, iElement, iAttrs, controller) { },
post: function postLink(scope, iElement, iAttrs, controller) {
$compile(iElement)(scope);
}
};
}
};
});