AngularJS:禁用指令内的数据绑定

时间:2015-03-10 17:46:49

标签: angularjs angularjs-directive angular-directive

我有一个指令,用于突出显示代码(语法高亮)。有时,此文本包含花括号和角度尝试来绑定它们。如何禁用该绑定:

app.directive('highlightJs', ['$timeout',function ($timeout) {
    return {
      restrict: 'AE',
      link    : function (scope,elem,$scope) {
        $timeout(function(){
          var x=elem[0].innerHTML;
          elem[0].innerHTML='<pre><code>'+x+'</code></pre>';
          console.log(x);
          hljs.highlightBlock(elem[0]);
        },0);
      }
    };

使用示例:

<highlight-js>
 &lt;img ng-src='{{url}}'/&gt;
<highlight-js>

呈现为<img ng-src=""/>而不是<img ng-src="{{url}}"/>

任何帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

刚用这个解决方案。虽然这可能不是一个完美的解决方案,但仍有效。

<highlight-js>
 <code ng-non-bindable>
  {{url}}
 </code>
</highlight-js>