javascript - Unicode-tegn i Angular-binding
Det finnes noen svar på hvordan man viser Unicode-tegnkoder i Angular-bindinger, men jeg prøver å vise én dynamisk og alt ser ut til å feile.
Jeg har en komponent som mottar en tegnkode som en @Input-parameter.
<my-component [icon]="e901"></my-component>
Komponenten forsøker deretter å vise det, men ingen av disse fungerer:
<i>{{ "\u" + icon }}</i>
<i [innerHTML]="'\u' + icon"</i>
<i [innerHTML]="`\u${icon}`"</i>
<i [innerHTML]="'&#' + icon + ';'"</i>
Det er mye rom for å leke med syntaksen, men det resulterer alltid enten i en feil eller bare viser \ue901 som en streng. Det fungerer derimot hvis jeg hardkoder koden:
<i>{{ "\ue901" }}</i>
Det spiller ingen rolle om jeg genererer strengen i malen eller TypeScript. Det fungerer ikke hvis jeg prøver å sende hele koden som en parameter. Noen ideer, folkens?
Svar #1
Etter at JGFMK påpekte halve svaret, her er løsningen:
I koden:
this.icon = '&#x' + this.icon + ';';
Deretter i malen:
<span [innerHTML]="icon"></span>
Svar #2
Du kan også bruke HTML-kode, her kan du søke etter det https://www.rapidtables.com/web/html/html-codes.html
Håp hjelper
