如何在.eslintrc.js中禁用 eslint 的 object-curly-spacing 规则中的 '{' 后面不能有空格?

9

我正在使用prettier,并用firebase init和eslint选项初始化了我的项目。但是当我保存文件时,prettier扩展会在对象花括号中添加空格,就像这样:

export { basicHTTP } from './http';

我使用eslint时遇到了错误:eslint error, 有没有办法禁用它?

这是我使用firebase init生成的 .eslintrc.js 文件:

module.exports = {
  root: true,
  env: {
    es6: true,
    node: true,
  },
  extends: [
    'eslint:recommended',
    'plugin:import/errors',
    'plugin:import/warnings',
    'plugin:import/typescript',
    'google',
  ],
  parser: '@typescript-eslint/parser',
  parserOptions: {
    project: ['tsconfig.json', 'tsconfig.dev.json'],
    tsconfigRootDir: __dirname,
    sourceType: 'module',
  },
  ignorePatterns: [
    '/lib/**/*', // Ignore built files.
  ],
  plugins: ['@typescript-eslint', 'import'],
  rules: {
    quotes: ['error'],
  },
};

你看过 ESLint 文档了吗?它们解释了如何配置规则。https://eslint.org/docs/user-guide/configuring#disabling-rules-with-inline-comments - Brad Zacher
2个回答

13

将您的规则修改为以下内容:

rules: {
  'object-curly-spacing': ['error', 'always'],
  'quotes': ['error'],
},

更改后,您可能需要修复所有的JS文件以使用相同的语法,但这只是一个好的实践。

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


4
这是关于object-curly-spacing的问题,引号不相关,或者我漏掉了什么? - Frank N

2

在编写代码时,您可以禁用vscode自动添加空格的功能。

打开settings.json文件并添加以下行:

"typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": false,
"javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": false,

这将在 JavaScript 和 TypeScript 上修复它。


太棒了!对于那些试图找到文件的人,请按照以下步骤操作:
  1. 按下 Ctrl + Shift + P,2. 在搜索框中输入 'user settings',3. 选择 Preferences: Open User Settings (JSON) 选项。
- undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接