在vscode编辑器当中使用vite框架,配置eslint:
首先在vite项目中,安装eslint-plugin-vue依赖
npm install --save-dev eslint eslint-config-prettier eslint-plugin-prettier eslint-plugin-vue eslint-plugin-html prettier @babel/plugin-syntax-dynamic-import babel-eslint
.eslintrc.js配置如下
module.exports = {
root: true,
env: {
node: true,
'vue/setup-compiler-macros': true
},
extends: ['eslint:recommended', 'plugin:vue/vue3-recommended', 'prettier'],
plugins: ['vue', 'html', 'prettier'],
parserOptions: {
ecmaVersion: 8
},
rules: {
'prettier/prettier': 'error',
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
'vue/no-multiple-template-root': 'off',
'vue/multi-word-component-names': 'off',
'no-mutating-props': 'off',
'vue/no-v-html': 'off'
},
overrides: [
{
files: [
'**/__tests__/*.{j,t}s?(x)',
'**/tests/unit/**/*.spec.{j,t}s?(x)'
],
env: {
mocha: true
}
}
]
};
.prettierrc
{
"semi": true,
"endOfLine": "auto",
"singleQuote": true,
"trailingComma": "none"
}
setting.json
{
"editor.codeActionsOnSave": {
"source.fixAll": true,
"source.fixAll.eslint": true
},
"eslint.alwaysShowStatus": true,
"eslint.validate": [
"vue",
"javascript",
"javascriptreact",
"html",
],
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"eslint.options": {
"overrideConfig": {
"env": {
"browser": true,
"es6": true
},
"parserOptions": {
"ecmaVersion": 2019,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true
}
},
"rules": {
"no-debugger": "off"
}
}
},
}