当您 select JSON 在 VSCode 上将评论作为语言模式时会发生什么?

What happens when you select JSON with Comments as the Language Mode on VSCode?

当语言模式设置为 JSON(根据文件扩展名自动检测)时,出现错误:

但是如果我将其设置为 JSON 并附上注释,错误就消失了:

我想知道的是当我将其设置为 JSON With Comments:

时到底发生了什么

很明显 VSCode 不再抱怨 JSON 文件中的评论。

但是当某些包需要读取这些文件时,注释是否被删除了? 我通常需要在配置文件中进行评论,例如:

我评论配置文件会冒 "corrupting" 风险吗?这样做安全吗? 在我的示例中,eslintfirebase 会忽略注释吗?它是如何工作的?

给定的 JSON 文件是否支持注释完全取决于文件的使用方式。例如 .eslintrc.json 文件可以有注释,因为 eslint library/tool 可以正确解析它们,但是许多其他工具如果在 json

中遇到注释,就会报错

VS Code 的两种 json 语言模式(JSON vs JSON with Comments)仅决定 VS Code 及其扩展如何在编辑器中解释文件。它们不会更改文件的内容或影响其他应用程序解释文件的方式。 (即在 VS Code 中更改模式不应该 "corrupt" 文件)

  • 如果您正在编写需要标准 json 的 json,请使用 JSON 语言模式。如果您添加评论或尾随逗号

  • ,VS Code 将通过警告来帮助强制执行此操作
  • 如果您正在为支持注释的应用程序编写 json(例如 .eslintrc.json),请使用 JSON with Comments 语言模式