ESlint
2025年4月9日...大约 2 分钟前端开发ESlint
- ESLint是一个开源的JavaScript代码静态分析工具。它用于识别问题和统一代码风格。通过解析JavaScript代码,ESLint能够检测出代码中的潜在错误、不遵循最佳实践的部分以及不符合特定代码风格规范的地方。例如,它可以发现未声明的变量、不必要的分号等。
初始化配置文件:
npx eslint --init项目根目录下 .eslintrc 文件为配置文件。
1. 基本配置
- root: 设置为
true,表示这是项目的根配置文件 - env: 定义环境变量
browser: true - 支持浏览器全局变量node: true - 支持 Node.js 全局变量
- parser: 使用
vue-eslint-parser解析 Vue 文件 - extends: 继承的规则集
eslint:recommended- ESLint 官方推荐规则plugin:vue/recommended- Vue 官方推荐规则@baozun/eslint-config-bscd- 自定义规则集
2. 常用规则配置
错误级别:
error: 违反规则时报错warn: 违反规则时警告off: 关闭规则
常见规则:
semi: 要求使用分号no-unused-vars: 禁止未使用的变量no-redeclare: 禁止变量重新声明indent: 强制使用 2 个空格缩进vue/no-mutating-props: 禁止修改 propsvue/require-v-for-key: v-for 必须绑定 key
3. 导入排序规则
- import/order: 对导入模块进行排序和分组
- 分组顺序: builtin → external → internal → unknown
- 自定义路径分组:
@app/**路径的模块归为 external 组 - 组间换行: 不同组之间进行换行
- 字母排序: 按字母顺序升序排列
4. Vue 相关规则
vue/no-reserved-component-names: 防止组件名与 HTML 元素冲突vue/no-unused-components: 禁止模板中未使用的组件vue/valid-v-slot: 验证 v-slot 的使用vue/no-side-effects-in-computed-properties: 禁止在计算属性中使用产生副作用的代码