Heim >Web-Frontend >js-Tutorial >Beispielcode zum Anzeigen von CSS-Stilen in Angular4

Beispielcode zum Anzeigen von CSS-Stilen in Angular4

小云云
小云云Original
2017-12-28 09:08:111568Durchsuche

Dieser Artikel stellt Ihnen hauptsächlich die relevanten Informationen zum CSS-Stil zum Anzeigen von Inhalten in Angular 4 vor. Der Artikel stellt ihn ausführlich anhand von Beispielcode vor. Er hat einen gewissen Referenz-Lernwert für alle, die lernen oder arbeiten Wenn es nötig ist, kann es folgen. Lernen wir gemeinsam mit dem Herausgeber. Ich hoffe, es hilft allen.

Vorwort

Bevor wir mit dem Haupttext dieses Artikels beginnen, werfen wir zunächst einen Blick auf den relevanten Inhalt der Ausgabe von markiertem Text auf der Seite in Angular Standardmäßig werden alle Werte als nicht vertrauenswürdig behandelt. Wenn Werte aus der Vorlage über Attribute (Property), DOM-Elementattribute (Attribte), CSS-Klassenbindungen oder Interpolationsausdrücke eingefügt werden, bereinigt Angular diese Werte (Sanitize-Werte werden codiert). .

h3>Binding innerHTML</h3>

<p>Bound value:</p>

<p
class="e2e-inner-html-interpolated">{{htmlSnippet}}</p>

<p>Result of binding to innerHTML:</p>

<p
class="e2e-inner-html-bound" [innerHTML]="htmlSnippet"></p>
[innerHTML]="htmlSnippet"

Dieses Attribut kann das HTML-Tag erkennen, aber nicht den Attributwert im Tag

Das Problem wurde gefunden

Jeder weiß, dass es ein innerHTML-Attribut gibt Angular soll den anzuzeigenden Inhalt festlegen. Wenn der Inhalt jedoch CSS-Stile enthält, kann der Effekt der Stile nicht angezeigt werden.

Zum Beispiel:

public content: string = "<p style=&#39;font-size:30px&#39;>Hello Angular</p>";

<p [innerHTML]="content"></p>

zeigt nur „Hello World“ an und die Schriftart ist nicht 30 Pixel groß, was bedeutet, dass der CSS-Stil keine Auswirkung hat.

Lösung

Passen Sie eine Pipe an, um den Inhalt zu konvertieren. Schauen Sie sich den Code unten an.

Schreiben Sie eine HtmlPipe-Klasse

import {Pipe, PipeTransform} from "@angular/core";
import {DomSanitizer} from "@angular/platform-browser";

@Pipe({
 name: "html"
})

export class HtmlPipe implements PipeTransform{

 constructor (private sanitizer: DomSanitizer) {

 }

 transform(style) {
 return this.sanitizer.bypassSecurityTrustHtml(style);
 }
}

Fügen Sie die Pipe HtmlPipe in das erforderliche Modul ein

@NgModule({
 declarations: [
 HtmlPipe
 ]
})

Fügen Sie den Pipe-Namen zu innerHtml hinzu

<p [innerHTML]="content | html"></p>

Dadurch wird der CSS-Stil des Inhalts angezeigt.

Verwandte Empfehlungen:

Detaillierte Erläuterung der Implementierungsmethode einer vollständigen Angular4 FormText-Komponente

Beispielanalyse der Angular4-Formularantwortfunktion

Projektvorbereitung und Umgebungsaufbau in Angular4

Das obige ist der detaillierte Inhalt vonBeispielcode zum Anzeigen von CSS-Stilen in Angular4. 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