2017-08-25 76 views
2

实际情况很简单:我想为我的库那是因为我想要的代码示例演示与粘贴部位有一起提供的文档。如何告诉Angular不要编译模板的某些部分?

所以我的问题是:如何使一个部分编译且可执行的,但另一个 - 只是一个文本(带双大括号!)。

例如:

<angular-switchery [(ngModel)]="swticherModel"></angular-switchery> 
Switcher: {{swticherModel? 'ON' : 'OFF'}} 
+0

https://stackoverflow.com/questions/42516548/how-to-escape-the-curly-braces-in-an-angular-template – yurzui

回答

1

在这里看到:http://www.syntaxsuccess.com/viewarticle/ignoring-angular-2.0-bindings

可以使用ngOnBindable指令,或DomSanitizer显示前消毒的文本。

<div ngNonBindable>{{10 * 10}}</div> 

对于大教堂消毒剂,导入服务

import { DomSanitizer } from '@angular/platform-browser' 

注入它在构造函数中

constructor(private sanitizer: DomSanitizer) { 

那么无论你需要注入文本,使用bypassSecurityTrustHTML方法。

this.sanitizer.bypassSecurityTrustHTML(your string here) 

很多人把消毒液进入管道,因此在轻松的模板,能自动消毒字符串,但我不知道是否会为您的使用情况下工作。

1

据我所知,你有两个选择:

•您想要显示的代码只是简单的部分:你也许能够“逃离”你的双在括号中加双引号括起来。如果它不工作,你仍然可以存储字符串内您的代码示例•您希望提供更多的后续片断,你会用{{myPieceOfCodeToShow}}

显示:清洁解决方案,我所知道的是存储在外部文本文件,并把这些片段将它们加载为大字符串。

相关问题