Angular: как избежать зачистки внутреннего Html? - PullRequest
0 голосов
/ 12 апреля 2020

Я хочу показать @ctrl/ngx-emoji-mart, эмодзи в компоненте чата. Но я должен установить данные, используя innerHtml, как показано ниже.

<div [innerHtml]="message"></div>
message = "<ngx-emoji [emoji]="{ id: 'santa', skin: 3 }" size="16"></ngx-emoji>"

Итак, как упоминалось здесь, Angular 2: очистка HTML лишает некоторого содержимого стиль css 1007 *. Я использовал следующие pipe,

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

@Pipe({ name: 'noSanitize' })
export class NoSanitizePipe implements PipeTransform {
   constructor(private domSanitizer: DomSanitizer) {

   }
   transform(html: string): SafeHtml {
      return this.domSanitizer.bypassSecurityTrustHtml(html);
   }
}

Теперь angular не разбирает сообщения, такие как <h2>Hello</h2>, но если сообщение содержит теги ngx-emoji, angular все еще разбирает. Так как я могу предотвратить это и показывать теги emoji в сообщениях чата?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...