代码拉取完成,页面将自动刷新
module.exports = {
root: true,
parserOptions: {
// 采用 babel-eslint 作为语法解析器
parser: "babel-eslint",
// 指定来源的类型,有两种script或module
sourceType: "module",
},
env: {
// 设置为所需检查的代码是在浏览器环境运行的
browser: true,
node: true,
// 设置所需检查代码为 es6 语法书写
es6: true,
},
extends: ["plugin:vue/recommended", "eslint:recommended"],
// add your custom rules here
//it is base on https://github.com/vuejs/eslint-config-vue
rules: {
// 行最大属性
"vue/max-attributes-per-line": [
2,
{
singleline: 10,
multiline: {
max: 1,
allowFirstLine: false,
},
},
],
"vue/no-use-v-if-with-v-for": "off",
"vue/no-unused-vars": "off",
"vue/no-unused-components": "off",
// 单行html元素内容在新的一行
"vue/singleline-html-element-content-newline": "off",
// 多行html元素内容在新的一行
"vue/multiline-html-element-content-newline": "off",
// 组件名应该倾向于完整单词而不是缩写
"vue/name-property-casing": ["error", "PascalCase"],
// html右括号在新的一行
"vue/no-v-html": "off",
// 应同时设置setter和getter
"accessor-pairs": 2,
// 箭头间距
"arrow-spacing": [
2,
{
before: true,
after: true,
},
],
// 块间距
"block-spacing": [2, "always"],
// 大括号样式允许单行
"brace-style": [
2,
"1tbs",
{
allowSingleLine: true,
},
],
//为属性强制执行驼峰命名
camelcase: [
0,
{
properties: "always",
},
],
// 逗号不使用悬挂(如:一个对象的最后一项尾部不应该有逗号)
"comma-dangle": [2, "never"],
// 逗号间距
"comma-spacing": [
2,
{
before: false,
after: true,
},
],
//(默认)与数组元素,对象属性或变量声明在同一行之后和同一行需要逗号
"comma-style": [2, "last"],
"constructor-super": 2,
// 当一个块只包含一条语句时,不允许省略花括号。
curly: [2, "multi-line"],
// 成员表达式中的点应与属性部分位于同一行
"dot-location": [2, "property"],
// 强制文件以换行符结束(LF)
"eol-last": 2,
// 强制使用全等
eqeqeq: ["error", "always", { null: "ignore" }],
// 生成器函数中'*'两侧都要有间距
"generator-star-spacing": [
2,
{
before: true,
after: true,
},
],
"handle-callback-err": [2, "^(err|error)$"],
//缩进风格
indent: [
2,
2,
{
SwitchCase: 1,
},
],
"jsx-quotes": [2, "prefer-single"],
// 强制在对象字面量属性中的键和值之间保持一致的间距
"key-spacing": [
2,
{
beforeColon: false,
afterColon: true,
},
],
// 关键字如if/function等的间距
"keyword-spacing": [
2,
{
before: true,
after: true,
},
],
// 允许在没有new操作符的情况下调用大写启动的函数;(默认)要求new使用大写启动函数调用所有操作符
"new-cap": [
2,
{
newIsCap: true,
capIsNew: false,
},
],
// JavaScript通过new关键字调用函数时允许省略括号
"new-parens": 2,
// 不允许使用Array构造函数。除非要指定生成数组的长度
"no-array-constructor": 2,
"no-caller": 2,
// "no-console": "error",
// 不允许修改类声明的变量
"no-class-assign": 2,
"no-cond-assign": 2,
// 不能修改使用const关键字声明的变量
"no-const-assign": 2,
// 不允许正则表达式中的控制字符
"no-control-regex": 0,
// 不允许在变量上使用delete操作符
"no-delete-var": 2,
// 不允许在函数声明或表达式中使用重复的参数名称
"no-dupe-args": 2,
// 不允许在类成员中使用重复的参数名称
"no-dupe-class-members": 2,
// 不允许在对象文字中使用重复键
"no-dupe-keys": 2,
// 不允许在switch语句的case子句中使用重复的测试表达式
"no-duplicate-case": 2,
// 不允许在正则表达式中使用空字符类
"no-empty-character-class": 2,
// 不允许空块语句
"no-empty-pattern": 2,
// 不允许使用eval
"no-eval": 2,
// 不允许在catch子句中重新分配例外
"no-ex-assign": 2,
// 不允许直接修改内建对象的原型
"no-extend-native": 2,
"no-extra-bind": 2,
// 禁止不必要的布尔转换
"no-extra-boolean-cast": 2,
// 仅在函数表达式附近禁止不必要的括号
"no-extra-parens": [2, "functions"],
"no-fallthrough": 2,
// 消除浮点小数点,并在数值有小数点但在其之前或之后缺少数字时发出警告
"no-floating-decimal": 2,
// 允许重新分配function声明
"no-func-assign": 2,
// 消除隐含eval()
"no-implied-eval": 2,
// 不允许function嵌套块中的声明
"no-inner-declarations": [2, "functions"],
// 不允许RegExp构造函数中的无效正则表达式字符串
"no-invalid-regexp": 2,
// 捕获无效的空格
"no-irregular-whitespace": 2,
// 消除阴影变量声明
"no-iterator": 2,
// 禁止创建与范围内的变量共享名称的标签
"no-label-var": 2,
// 消除 JavaScript 中使用带标签的语句
"no-labels": [
2,
{
allowLoop: false,
allowSwitch: false,
},
],
// 消除脚本顶层或其他块中不必要的和可能混淆的块
"no-lone-blocks": 2,
// 不允许使用混合空格和制表符进行缩进
"no-mixed-spaces-and-tabs": 2,
// 禁止在逻辑表达式,条件表达式,声明,数组元素,对象属性,序列和函数参数周围使用多个空格
"no-multi-spaces": 2,
// 防止使用多行字符串
"no-multi-str": 2,
// 最多一个空行
"no-multiple-empty-lines": [
2,
{
max: 1,
},
],
// 不允许修改只读全局变量
"no-native-reassign": 2,
"no-negated-in-lhs": 2,
// 不允许使用Object构造函数
"no-new-object": 2,
// 消除new require表达的使用
"no-new-require": 2,
// 防止Symbol与new 同时使用的意外错误
"no-new-symbol": 2,
// 杜绝使用String,Number以及Boolean与new操作
"no-new-wrappers": 2,
// 不允许调用Math,JSON和Reflect对象作为功能
"no-obj-calls": 2,
// 不允许使用八进制文字
"no-octal": 2,
// 不允许字符串文字中的八进制转义序列
"no-octal-escape": 2,
// 防止 Node.js 中的目录路径字符串连接无效
"no-path-concat": 2,
"no-proto": 2,
// 消除在同一范围内具有多个声明的变量
"no-redeclare": 2,
// 在正则表达式文字中不允许有多个空格
"no-regex-spaces": 2,
// 消除return陈述中的任务,除非用括号括起来
"no-return-assign": [2, "except-parens"],
"no-self-assign": 2,
// 禁止比较变量与自身
"no-self-compare": 2,
// 禁止使用逗号运算符
"no-sequences": 2,
"no-shadow-restricted-names": 2,
"no-spaced-func": 2,
"no-sparse-arrays": 2,
// super前禁止this
"no-this-before-super": 2,
// 不允许抛出不可能是Error对象的文字和其他表达式
"no-throw-literal": 2,
// 不允许在行尾添加尾随空白
"no-trailing-spaces": 2,
// 任何对未声明的变量的引用都会导致错误
"no-undef": 2,
// 消除初始化为undefined的变量声明
"no-undef-init": 2,
// 不允许混淆多行表达式
"no-unexpected-multiline": 2,
// 查找循环条件内的引用,然后检查这些引用的变量是否在循环中被修改
"no-unmodified-loop-condition": 2,
// 不允许将条件表达式作为默认的分配模式
"no-unneeded-ternary": [
2,
{
defaultAssignment: false,
},
],
// 不允许可达代码return,throw,continue,和break语句后面还有语句。
"no-unreachable": 2,
// 不允许return,throw,break,和continue里面的语句finally块
"no-unsafe-finally": 2,
// 消除未使用的变量,函数和函数的参数
"no-unused-vars": [
2,
{
vars: "all",
args: "none",
},
],
"no-useless-call": 2,
// 禁止不必要地使用计算属性键
"no-useless-computed-key": 2,
// 在不改变类的工作方式的情况下安全地移除的类构造函数
"no-useless-constructor": 2,
// 禁用不必要的转义字符
"no-useless-escape": 0,
// 如果对象的属性位于同一行上,不允许围绕点或在开头括号之前留出空白
"no-whitespace-before-property": 2,
//禁用with
"no-with": 2,
// 强制将变量声明为每个函数(对于var)或块(对于let和const)范围一起声明或单独声明。 initialized: 'never' 每个作用域要求多个变量声明用于初始化变量
"one-var": [
2,
{
initialized: "never",
},
],
// 实施一致的换行
"operator-linebreak": [
2,
"after",
{
overrides: {
"?": "before",
":": "before",
},
},
],
// 在块内强制执行一致的空行填充
"padded-blocks": [2, "never"],
// avoidEscape: true 允许字符串使用单引号或双引号,只要字符串包含必须以其他方式转义的引号 ;allowTemplateLiterals: true 允许字符串使用反引号
quotes: [
2,
"single",
{
avoidEscape: true,
allowTemplateLiterals: true,
},
],
// 尾部不使用分号
semi: [0, "always"],
// 强制分号间隔
"semi-spacing": [
2,
{
before: false,
after: true,
},
],
// 块必须至少有一个先前的空间
"space-before-blocks": [2, "always"],
// 在参数后面不允许任何空格
"space-before-function-paren": [2, "never"],
// 禁止或要求(或)左边的一个或多个空格
"space-in-parens": [2, "never"],
// 强制二元运算符左右各有一个空格
"space-infix-ops": 2,
// words: true 如:new,delete,typeof,void,yield 左右必须有空格
// nonwords: false 一元运算符,如:-,+,--,++,!,!!左右不能有空格
"space-unary-ops": [
2,
{
words: true,
nonwords: false,
},
],
// 注释开始后,此规则将强制间距的一致性//或/*
"spaced-comment": [
2,
"always",
{
markers: [
"global",
"globals",
"eslint",
"eslint-disable",
"*package",
"!",
",",
],
},
],
// 不允许大括号内的空格
"template-curly-spacing": [2, "never"],
// 禁止比较时使用NaN,只能用isNaN()
"use-isnan": 2,
// 必须使用合法的typeof的值
"valid-typeof": 2,
// 立即执行函数表达式的小括号风格
"wrap-iife": [2, "any"],
// 强制执行*周围 yield*表达式的间距,两侧都必须有空格
"yield-star-spacing": [2, "both"],
yoda: [2, "never"],
// 使用let关键字声明的变量,但在初始分配后从未重新分配变量,应改为const声明
"prefer-const": 2,
// 只有测试环境能使用debugger
"no-debugger": 0,
// 不允许以对象元素开始和/或以对象元素结尾的对象的大括号内的间距
"object-curly-spacing": [
2,
"always",
{
objectsInObjects: false,
},
],
// 不允许数组括号内的空格
"array-bracket-spacing": [2, "never"],
},
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。