AngularJS在HTML中留下评论:是否可以删除它们?

时间:2013-11-23 17:16:54

标签: angularjs angularjs-directive

有谁知道你是否可以删除html代码中留下的角度注释?

例如:如果我使用ngRepeat并且没有要重复的项目,AngularJS就会离开:

<!-- ngRepeat: post in posts -->

3 个答案:

答案 0 :(得分:36)

此评论是由ngRepeat执行的元素转换的结果。看起来像been happening几乎从时间的早晨开始(以角度来说),并且只要指令要求元素转换就会创建。

虽然你肯定可以通过直接的HTML操作来消除它,但这不是一件安全的事情。阅读完源代码后,它会建议在删除原始ngRepeat元素后继续编译HTML时需要使用此注释。此外,在v1.2.0中,ngRepeat adds more comments用于确定重复元素的放置位置。

总结:

  • Angular不允许您删除此
  • 你可以手动完成但你最有可能打破角度
  • 要重申这些评论,首先删除此评论似乎是一个奇怪的请求 - 取决于您这样做的理由,可能有更好的选择来实现您的目标。

答案 1 :(得分:7)

在您的开发控制台中运行此操作以查看注释:

$("*").contents().filter(function(){ return this.nodeType == 8;}).remove();

不是一个正确的修复方法,而是在调试时提供方便的代码段。

答案 2 :(得分:3)

$compileProvider.debugInfoEnabled(false);

但是它可以打破一些插件,这些插件引用了角度评论。