62 lines
2.4 KiB
JavaScript
62 lines
2.4 KiB
JavaScript
|
module.exports = {
|
|||
|
root: true,
|
|||
|
env: {
|
|||
|
node: true,
|
|||
|
},
|
|||
|
extends: ['plugin:vue/strongly-recommended', '@vue/standard'],
|
|||
|
rules: {
|
|||
|
'max-len': [
|
|||
|
1,
|
|||
|
{
|
|||
|
code: 200, // 单行最大长度200,字符串,正则,注释除外
|
|||
|
ignoreStrings: true,
|
|||
|
ignoreTemplateLiterals: true,
|
|||
|
ignoreRegExpLiterals: true,
|
|||
|
ignoreComments: false,
|
|||
|
},
|
|||
|
],
|
|||
|
'comma-dangle': [2, 'always-multiline'], // 尾随逗号
|
|||
|
quotes: [2, 'single', { avoidEscape: true, allowTemplateLiterals: true }], // 字符串单引号
|
|||
|
semi: [2, 'always', { omitLastInOneLineBlock: true }], // 尾随分号
|
|||
|
'no-console': process.env.NODE_ENV === 'production' ? 2 : 0,
|
|||
|
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
|
|||
|
'generator-star-spacing': 2, // generater函数标识*两侧必须空格隔开
|
|||
|
'no-mixed-operators': 0, // 逻辑运算符允许混合使用 && ||
|
|||
|
'no-unused-vars': [2, { args: 'none' }], // 已声明变量必须在使用中,函数参数除外
|
|||
|
'prefer-const': 2,
|
|||
|
'template-curly-spacing': [2, 'always'], // 模版字符串单行空格
|
|||
|
indent: [2, 2], // 缩进两空格
|
|||
|
'lines-between-class-members': 0,
|
|||
|
|
|||
|
'vue/component-name-in-template-casing': 2, // 自定义组件名大驼峰
|
|||
|
'vue/html-self-closing': 0, // 标签无需自动闭合为单标签
|
|||
|
'vue/html-closing-bracket-newline': 2, // 多属性标签结束箭头独占一行
|
|||
|
'vue/multi-word-component-names': [2, { ignores: ['index', 'Index'] }], // 组件名称大驼峰
|
|||
|
'vue/no-unused-components': 2, // 局部注册组件必须在使用中
|
|||
|
|
|||
|
'vue/max-attributes-per-line': 2, // 标签单行属性数量限制,默认1
|
|||
|
'vue/attribute-hyphenation': 0, // 自定义组件的属性不强制使用-分割的连字符
|
|||
|
'vue/no-use-v-if-with-v-for': 0, // v-if和v-for可以共存
|
|||
|
|
|||
|
'vue/singleline-html-element-content-newline': 2, // 标签内容换行
|
|||
|
'vue/multiline-html-element-content-newline': 2,
|
|||
|
|
|||
|
'vue/no-parsing-error': 2, // 语法错误提示
|
|||
|
'vue/html-indent': [2, 2], // 缩进两空格
|
|||
|
|
|||
|
'vue/no-mutating-props': 0, // 可以修改prop对象参数的属性
|
|||
|
},
|
|||
|
parserOptions: {
|
|||
|
parser: '@babel/eslint-parser',
|
|||
|
},
|
|||
|
overrides: [
|
|||
|
{
|
|||
|
files: [
|
|||
|
'**/__tests__/*.{j,t}s?(x)',
|
|||
|
'**/tests/unit/**/*.spec.{j,t}s?(x)',
|
|||
|
],
|
|||
|
env: { jest: true },
|
|||
|
},
|
|||
|
],
|
|||
|
};
|