eslint
npm i eslint-plugin-promise eslint-plugin-node eslint-plugin-import eslint-plugin-standard eslint-config-standard prettier eslint-plugin-prettier eslint-config-prettier babel-eslint -D
//.prettierrc 配置文件
{
"singleQuote": true,
"trailingComma": "es5",
"printWidth": 100,
"semi": false,
"jsxSingleQuote": true
}
// .eslintrc.js
module.exports = {
env: {
browser: true,
jquery: true, //由于项目中使用来jquery。。。其实不用引入jquery的,以后有机会去掉jquery后,请移除该配置。
},
parserOptions: {
parser: 'babel-eslint', //词法解析器使用babel-eslint,以更好的适配es6的新api
ecmaVersion: 6, //启用 ES6 语法支持;默认设置为3,5(默认), 你可以使用 6、7、8 或 9 来指定你想要使用的 ECMAScript 版本。你也可以用使用年份命名的版本号指定为 2015(同 6),2016(同 7),或 2017(同 8)或 2018(同 9)
sourceType: 'module', //设置为 "script" (默认) 或 "module"(如果你的代码是 ECMAScript 模块)。
},
extends: [
'standard',
'eslint:recommended',
'plugin:vue/essential',
'plugin:prettier/recommended',
],
plugins: ['vue','prettier'],
rules: {
'prettier/prettier': 'error',
'generator-star-spacing': 'off',
'import/no-named-as-default': 'off',
'import/no-named-as-default-member': 'off',
'no-unused-vars': [
'error',
{ vars: 'all', args: 'none', ignoreRestSiblings: false },
], //没有使用的参数,不会报错。因为个人觉的把可用的参数写上去 有利于以后的维护。
'vue/multi-word-component-names': 'off', //关闭组件名单个单词告警
camelcase: 'off', //关闭变量名驼峰规则告警
'@typescript-eslist/camelcase': 0,
},
};
通过IDEA进行代码开发时,需要指定Tools–Actions on save选中 run eslint --fix
FAQ
Error while loading rule 'prettier/prettier': context.getPhysicalFilename is not a function
eslint-plugin-prettie 4.x
与要求eslint:7.28
以上
load plugin 'vue' declared in '.eslintrc.js': Package subpath './lib/rules/array-bracket-spacing'
yarn add eslint-plugin-vue -u
Parsing error: Must use import to load ES Module:
yarn add @babel/eslint-parser -u
idea手动指定webpack.config.js为配置文件即可识别@ 路径为:nodemodule/@vue/cli.service/webpack.config.js
Environment key "es2021" is unknown
升级eslint至7.8.0版本以上即可
yarn upgrade eslint@7.32.0