防止AngularJS编译元素的内容

时间:2016-04-05 18:18:11

标签: angularjs angularjs-compile

有没有办法让Angular不编译某些元素的内容?

用例:

Angular CMS包含附加 CKEditor textarea个元素。 CKEditor使用 divarea 插件而不是默认的 iframe 插件。 textareas包含HTML模板。这些模板按需导出并提供给Angular Web应用程序。

模板很简单:纯文本,有序列表,在纯文本上应用的临时预定义类属性;但纯文本可以包含Angular webapp插入的占位符。我不想让CMS中的Angular完全插入这些内容。

目前我的问题是CMS中的Angular会插入这些占位符,并且由于它们没有引用任何内容,因此将它们删除。我宁愿不仅仅将分隔符更改为' {[',']}',因为这可能会在短期内修复此问题,指令和文本复制冲突的可能性随着项目的进行而增加,我想避免它。

是否有任何指示或其他方式告诉Angular远离特殊标记元素的内容?

1 个答案:

答案 0 :(得分:7)

在元素上使用ng-non-bindable directive

  

ngNonBindable指令告诉Angular不要编译或绑定   当前DOM元素的内容。如果元素,这很有用   包含似乎是Angular指令和绑定但是哪些   应该被Angular忽略。

或者使用您自己的terminal: true属性指令来更好地匹配布局,因为它是the only thing that ng-non-bindable directive does