如何插入带有插值表达式的HTML注释?

Jer*_*Jer 6 angularjs

我想在ng-repeat块中添加带有插值表达式的HTML注释.但是,当我尝试这样做时,表达式不是插值的.例如:

<tr ng-repeat="item in items"
    <!-- ID that I don't want the user to see, but want for debugging = {{item.id}} -->
    <td>{{item.prettyName}}</td>
    <td>{{item.someProperty}}</td>
    <td>{{item.someOtherProperty}}</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

当我查看DOM(即Chrom DevTools中的Elements选项卡)时,我只看到未插入的字符串("{{item.id}}")而不是插值.

这里的语法是什么?

New*_*Dev 9

这样做有点矫枉过正,因为您可以使用评论display: none或类似的建议,但这只是一个有趣的练习:

调用注释的指令的语法是:

<!-- directive: foo expression -->
Run Code Online (Sandbox Code Playgroud)

我希望像ng-bind支持的评论一样,但事实并非如此.但你可以轻松创建自己的:

app.directive('comment', function($interpolate) {
  return {
    restrict: 'M',
    scope: true,
    link: function(scope, element, attrs) {
      var comment = $interpolate(attrs.comment)(scope);
      element.replaceWith("<!-- " + comment + "-->" );
    }
  };
});
Run Code Online (Sandbox Code Playgroud)

用法是:

<!-- directive: comment "something something {{item.id}}" -->
Run Code Online (Sandbox Code Playgroud)