Ich habe eine rekursive Angular-Direktive, die eine Template-Variable verwendet und in der link
-Funktion kompiliert wird.
Problem ist, dass meine Vorlage wirklich lange und außer Kontrolle geraten ist und ich es in einer externen HTML-Datei externalisieren möchte (es würde es auch einfacher machen, automatisch einzuziehen).
Wie kann man eine externe Vorlage in eine Direktive laden, die innerhalb der $compile
verwendet werden kann?
Ich habe gesehen, aber das lässt mich die Variable nicht benennen und an die $compile
Funktion übergeben.
var template =
"<p>My template</p>"+
"<this-directive val='pass-value'></this-directive>";
return {
scope: {
...
},
...
link: function(scope, element){
element.html(template);
$compile(element.contents())(scope);
}
}
und
Das ist großartig! Sie sind mein Held! Kann ich dir einen Kaffee kaufen? – CodyBugstein
Ich bin neugierig, ist es möglich, HTML-Bindung (ng-bind-html) innerhalb der "template.html" in Ihrer Abbildung zu verwenden? Ich kann es nicht funktionieren lassen. – zhekaus
@zhekaus, ja, aber Sie müssen immer noch die üblichen 'ngSanitize' /' $ sanitize' verwenden oder sonst '$ sce.trustAsHtml' verwenden –