0

在 Angular 8 应用程序中,我需要显示原始 html 代码而不对其进行评估(如代码片段)。

例如

<div #sample>
    {{'standard-button' | translate}}
    <ng-container *ngIf="!clicked">
        {{'not' | translate}}
    </ng-container>
    {{'clicked' | translate}}
</div>

有没有办法得到下面的 html?我正在使用 highlightJS 但不幸的是它会评估插值{{}}

先感谢您

4

2 回答 2

2

你可以使用 ngNonBindable 指令告诉 Angular 不要编译或绑定当前 DOM 元素的内容。

<div ngNonBindable  #sample>
  {{'standard-button' | translate}}
  <ng-container *ngIf="!clicked">
    {{'not' | translate}}
  </ng-container>
  {{'clicked' | translate}}
</div>
于 2019-08-27T10:36:48.053 回答
0

您可以将其存储在字符串变量中

    private htmlTemplate: string = "<div #sample>
    {{'standard-button' | translate}}
    <ng-container *ngIf='!clicked'>
        {{'not' | translate}}
    </ng-container>
    {{'clicked' | translate}}
</div>"

并在模板中使用它,例如:

<div>{{htmlTemplate}}</div>

于 2019-08-27T10:29:24.857 回答