如何告诉 eslint 您更喜欢在字符串周围使用单引号

问题描述 投票:0回答:6

我是 eslint 新手,它会抛出大量错误,告诉我使用双引号:

error  Strings must use doublequote

这不是我的偏好。 我已经设置了一个 .eslintrc 文件,其中包含基础知识:

{
  "env": {
    "node": 1
  }
}

我想将其配置为单引号。

node.js eslint
6个回答
143
投票

http://eslint.org/docs/rules/quotes.html

{
  "env": {
    "node": 1
  },
  "rules": {
    "quotes": [2, "single", { "avoidEscape": true }]
  }
}

58
投票

如果您使用 TypeScript/ES6,您可能需要包含模板文字(反引号)。 此规则更喜欢单引号,并允许模板文字。

TypeScript 示例

"@typescript-eslint/quotes": [
  "error",
  "single",
  {
    "allowTemplateLiterals": true
  }
]

另一个有用的选项是允许使用单引号或双引号,只要字符串包含可转义的引号,例如

"lorem ipsum 'donor' eta"
'lorem ipsum "donor" eta'

"@typescript-eslint/quotes": [
  "error",
  "single",
  {
    "avoidEscape": true,
    "allowTemplateLiterals": true
  }
]

参考资料:

ESLint

https://eslint.org/docs/rules/quotes

TypeScript ESLint

https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/quotes.md


28
投票
rules: {
  'prettier/prettier': [
    'warn',
    {
      singleQuote: true,
      semi: true,
    }
  ],
},

版本中

"eslint": "^7.21.0"


6
投票

对于 jsx 字符串,如果您想为所有文件设置此规则,请在 eslint 配置文件中创建该规则。

  rules: {
    'jsx-quotes': [2, 'prefer-single'],
  }

或用“prefer-double”表示双引号。


4
投票

如果您还想允许双引号(如果它们可以避免在字符串中转义单引号),并允许模板文字(合理的默认值,imo),请尝试以下操作:

{
  "env": {
    "node": 1
  },
  "rules": {
    "quotes": [2, "single", { "avoidEscape": true, "allowTemplateLiterals": true }]
  }
}

0
投票

还有一个解决方案:

rules: {
quotes: ['warn', 'single']
}
© www.soinside.com 2019 - 2024. All rights reserved.