1.修改eslint.config.js
import js from '@eslint/js'
import pluginVue from 'eslint-plugin-vue'
import skipFormatting from '@vue/eslint-config-prettier/skip-formatting'
import pluginPrettier from 'eslint-plugin-prettier' // 添加 prettier 插件导入
export default [
{
name: 'app/files-to-lint',
files: ['**/*.{js,mjs,jsx,vue}']
},
{
name: 'app/files-to-ignore',
ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**']
},
js.configs.recommended,
...pluginVue.configs['flat/essential'],
skipFormatting,
// 添加自定义规则
{
name: 'app/custom-rules',
plugins: {
prettier: pluginPrettier // 注册 prettier 插件
},
rules: {
'prettier/prettier': [
'warn',
{
singleQuote: true, // 单引号
semi: false, // 无分号
printWidth: 100, // 每行宽度至多80字符
trailingComma: 'none', // 不加对象|数组最后逗号
endOfLine: 'auto' // 换行符号不限制(win mac 不一致)
}
],
'vue/multi-word-component-names': [
'warn',
{
ignores: ['index'] // vue组件名称多单词组成(忽略index.vue)
}
],
'vue/no-setup-props-destructure': ['off'], // 关闭 props 解构的校验
'no-undef': 'error' // 添加未定义变量错误提示
}
}
]
2.修改setting.js
3.安装插件(最容易忽略)
pnpm add eslint-plugin-prettier