| module.exports = { | |
|   env: { | |
|     browser: true, | |
|     es2021: true, | |
|     node: true, | |
|   }, | |
|   extends: [ | |
|     'eslint:recommended', | |
|     'plugin:@typescript-eslint/recommended', | |
|     'plugin:vue/vue3-essential', | |
|     // eslint-plugin-import 插件, @see https://www.npmjs.com/package/eslint-plugin-import | |
|     'plugin:import/recommended', | |
|     // eslint-config-airbnb-base 插件 已经改用 eslint-config-standard 插件 | |
|     'standard', | |
|     // 1. 接入 prettier 的规则 | |
|     'prettier', | |
|     'plugin:prettier/recommended', | |
|     './.eslintrc-auto-import.json', | |
|   ], | |
|   overrides: [ | |
|     { | |
|       env: { | |
|         node: true, | |
|       }, | |
|       files: ['.eslintrc.{js,cjs}'], | |
|       parserOptions: { | |
|         sourceType: 'script', | |
|       }, | |
|     }, | |
|   ], | |
|   parserOptions: { | |
|     ecmaVersion: 'latest', | |
|     parser: '@typescript-eslint/parser', | |
|     sourceType: 'module', | |
|   }, | |
|   plugins: [ | |
|     '@typescript-eslint', | |
|     'vue', | |
|     // 2. 加入 prettier 的 eslint 插件 | |
|     'prettier', | |
|     // eslint-import-resolver-typescript 插件,@see https://www.npmjs.com/package/eslint-import-resolver-typescript | |
|     'import', | |
|   ], | |
|   rules: { | |
|     // 3. 注意要加上这一句,开启 prettier 自动修复的功能 | |
|     'prettier/prettier': 'error', | |
|     // turn on errors for missing imports | |
|     'import/no-unresolved': 'off', | |
|     // 对后缀的检测,否则 import 一个ts文件也会报错,需要手动添加'.ts', 增加了下面的配置后就不用了 | |
|     'import/extensions': [ | |
|       'error', | |
|       'ignorePackages', | |
|       { js: 'never', jsx: 'never', ts: 'never', tsx: 'never' }, | |
|     ], | |
|     // 只允许1个默认导出,关闭,否则不能随意export xxx | |
|     'import/prefer-default-export': ['off'], | |
|     'no-console': ['off'], | |
|     // 'no-unused-vars': ['off'], | |
|     // '@typescript-eslint/no-unused-vars': ['off'], | |
|     // 解决vite.config.ts报错问题 | |
|     'import/no-extraneous-dependencies': 'off', | |
|     'no-plusplus': 'off', | |
|     'no-shadow': 'off', | |
|     'vue/multi-word-component-names': 'off', | |
|     '@typescript-eslint/no-explicit-any': 'off', | |
|     'no-underscore-dangle': 'off', | |
|     'no-use-before-define': 'off', | |
|     'no-undef': 'off', | |
|     'no-unused-vars': 'off', | |
|     'no-param-reassign': 'off', | |
|     '@typescript-eslint/no-unused-vars': 'off', | |
|     // 避免 `eslint` 对于 `typescript` 函数重载的误报 | |
|     'no-redeclare': 'off', | |
|     '@typescript-eslint/no-redeclare': 'error', | |
|   }, | |
|   // eslint-import-resolver-typescript 插件,@see https://www.npmjs.com/package/eslint-import-resolver-typescript | |
|   settings: { | |
|     'import/parsers': { | |
|       '@typescript-eslint/parser': ['.ts', '.tsx'], | |
|     }, | |
|     'import/resolver': { | |
|       typescript: {}, | |
|     }, | |
|   }, | |
|   globals: { | |
|     $t: true, | |
|     uni: true, | |
|     UniApp: true, | |
|     wx: true, | |
|     WechatMiniprogram: true, | |
|     getCurrentPages: true, | |
|     UniHelper: true, | |
|     Page: true, | |
|     App: true, | |
|     NodeJS: true, | |
|   }, | |
| }
 |