【发布时间】:2016-05-11 20:23:22
【问题描述】:
我在 javascript 文件中有一些存根 json 数据。我想将其保留为带双引号的有效 JSON。 Eslint 需要在 javascript 文件中使用单引号,我不想在全局范围内更改该规则。
如何告诉 eslint inline 允许在给定代码块内使用双引号,而不在每行末尾放置 //eslint-disable-line?
我尝试将以下内容放在文件顶部但没有成功:
/*eslint quotes: [2, "double"]*/
var sampleData = [
{"id": 1, "name": "foo"},
{"id": 2, "name": "bar"},
...
];
即使它确实有效,我只想处理包含双引号的代码块中的双引号,而不是整个文件。
【问题讨论】:
-
如果周围有其他代码,则不是 JSON... 在这种情况下,lint 是正确的:在对象文字上使用单引号。此外,如果这是您做出的选择,那您为什么不能简单地忽略该建议? lint 不是验证器,它用于捕捉编码错误和歧义,以及其他你不想写的东西。
-
@dandavis 无论如何,我如何告诉 eslint 忽略该代码块?我经常从 JSON 文件中复制数据。与其进行大量查找和替换,我更愿意使用从有效 JSON 文档中复制的数据。
-
afaik,您无法更改代码块的选项。您可以在代码中从 JSON 导入数据。或者,正如 lint 文档所述:“如果您不需要字符串样式的一致性,则可以安全地禁用此规则。”...听起来您不需要/想要一致性...
-
目前不支持此用例,但我们有一个问题可以讨论:github.com/eslint/eslint/issues/1766
-
谢谢,@Gyandeep。很高兴知道。
标签: javascript json eslint