You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为.eslintrc.cjs文件的ESLint配置属性开启自动补全?

为.cjs格式ESLint配置文件开启属性自动补全的方案

方案一:给.cjs文件添加JSDoc类型注释

在你的.eslintrc.cjs文件顶部添加类型注释,明确指定导出对象的类型为ESLint的配置类型,就能触发编辑器的自动补全。步骤如下:

  1. 确保已经安装了@types/eslint包(如果没装,执行npm install -D @types/eslint)
  2. 在配置文件顶部添加JSDoc注释,然后导出配置:
/** @type {import('eslint').Linter.Config} */
module.exports = {
  env: {
    browser: true,
    es2021: true,
    node: true
  },
  extends: [
    'eslint:recommended',
    'plugin:@typescript-eslint/recommended',
    'plugin:react/recommended'
  ],
  parser: '@typescript-eslint/parser',
  parserOptions: {
    ecmaFeatures: {
      jsx: true
    },
    ecmaVersion: 'latest',
    sourceType: 'module'
  },
  plugins: ['@typescript-eslint', 'react'],
  rules: {
    // 自定义规则
  }
};

编辑器会识别这个类型注释,自动补全ESLint配置的所有属性和可选值。

方案二:改用ESLint扁平配置(推荐)

ESLint现在推荐使用扁平配置格式,这种格式下你可以直接使用.eslint.config.js(因为项目是ESM类型,这个文件会被当作ESM处理),天然支持TypeScript类型自动补全,无需额外配置:

  1. 创建.eslint.config.js文件,内容示例:
import type { Linter } from 'eslint';
import react from 'eslint-plugin-react';
import tsEslint from '@typescript-eslint/eslint-plugin';
import tsParser from '@typescript-eslint/parser';

const config: Linter.Config[] = [
  {
    files: ['**/*.{js,jsx,ts,tsx}'],
    env: {
      browser: true,
      es2021: true,
      node: true
    },
    languageOptions: {
      parser: tsParser,
      parserOptions: {
        ecmaFeatures: { jsx: true },
        ecmaVersion: 'latest',
        sourceType: 'module'
      }
    },
    plugins: {
      react,
      '@typescript-eslint': tsEslint
    },
    rules: {
      ...react.configs.recommended.rules,
      ...tsEslint.configs.recommended.rules,
      // 自定义规则
    }
  }
];

export default config;
  1. 移除旧的.eslintrc.cjs文件,编辑器会直接根据导入的Linter.Config类型提供完整的自动补全。

这个方案更符合ESLint的未来发展方向,同时彻底解决自动补全问题。


内容的提问来源于stack exchange,提问作者Vegatality

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 01:35:03