Heim  >  Artikel  >  Web-Frontend  >  Wie kompiliere ich verschachtelte Angular-Vorlagen dynamisch mit ng-bind-html?

Wie kompiliere ich verschachtelte Angular-Vorlagen dynamisch mit ng-bind-html?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-18 15:38:03497Durchsuche

How to Dynamically Compile Nested Angular Templates with ng-bind-html?

AngularJS: Kompilieren verschachtelter Angular-Vorlagen mit ng-bind-html

Problem:

Die Verwendung von ng-bind-html zum dynamischen Einbinden von Angular-Vorlagen führt dazu, dass die Vorlagen als einfaches HTML angezeigt werden, anstatt interpretiert und ausgeführt zu werden.

Lösung:

Um Angular zu kompilieren Vorlagen in ng-bind-html nutzen die Drittanbieter-Direktive „angular-bind-html-compile“.

Implementierung:

Schritt 1: Installieren Sie die Direktive mit:

npm install angular-bind-html-compile

Schritt 2: Fügen Sie die Direktive zu Ihrem Angular-Modul hinzu:

<code class="javascript">angular.module("app", ["angular-bind-html-compile"])</code>

Schritt 3:Verwenden Sie in Ihrer Vorlage die Anweisung bind-html-compile für das Element, in das Sie HTML dynamisch einbinden möchten:

<code class="html"><div bind-html-compile="myDynamicHtml"></div></code>

Beispiel:

In Ihrem Controller:

<code class="javascript">$scope.myDynamicHtml = "<div ng-controller='myController'><span>Hello {{ myName }}</span></div>";</code>

In Ihrer Vorlage:

<code class="html"><div bind-html-compile="myDynamicHtml"></div></code>

Hinweise:

  • Die Direktive überwacht Änderungen im Wert dem bind-html-compile-Attribut zugewiesen und den HTML-Code entsprechend neu kompiliert.
  • Mit dieser Lösung können Sie Angular-Vorlagen dynamisch in ng-bind-html rendern, unabhängig vom Inhalt oder der Komplexität der Vorlagen.

Das obige ist der detaillierte Inhalt vonWie kompiliere ich verschachtelte Angular-Vorlagen dynamisch mit ng-bind-html?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn