Admin.UI/.eslintrc.js

(开头部分) 5KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

module.exports = {
  root: true,
  parserOptions: {
    parser: 'babel-eslint',
    sourceType: 'module'
  },
  env: {
    browser: true,
    node: true,
    es6: true
  },
  extends: ['plugin:vue/recommended', 'eslint:recommended'],
  globals: {
    _: 'readonly'
  },
  // 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/singleline-html-element-content-newline': 'off',
    'vue/multiline-html-element-content-newline': 'off',
    'vue/name-property-casing': ['error', 'PascalCase'],
    'vue/no-v-html': 'off',
    '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'],
    '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
    }],
后面还有 140 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

  • 代码解读5** 解读于 2026-10-03 16:59
    这个文件是 ADMIN.CORE 权限管理系统前端工程 Admin.UI 的 ESLint 配置文件,属于开发工具链的一部分,不参与业务运行。它决定了整个前端项目在编写 Vue 组件和 JavaScript 代码时必须遵守的语法与风格规则,是团队协作和代码质量的第一道关卡。 1. 基本定位与解析环境 - 文件通过 module.exports 导出一个配置对象,root 设为 true,表示这是 ESLint 配置的根,不会再向上层目录查找配置。 - parserOptions 指定用 babel-eslint 作为解析器,sourceType 为 module,说明项目使用 ES Module 语法,并且依赖 Babel 处理较新的 JS 特性。 - env 同时开启 browser、node 和 es6,意味着代码里可以直接使用浏览器全局对象、Node 全局变量以及 ES6 语法,不会因此报未定义错误。 2. 规则继承与全局变量 - extends 里引入了 plugin:vue/recommended 和 eslint:recommended 两套推荐规则,前者针对 Vue 单文件组件,后者是 ESLint 官方推荐的基础规则集。 - globals 把下划线声明为只读全局变量,通常对应 lodash 之类的工具库,说明项目里可能全局挂载了它,使用时不需要 import。 3. Vue 相关规则 - vue/max-attributes-per-line 限制单行标签最多 10 个属性,多行时每行最多 1 个属性,且首行不允许放属性,这是为了保持模板可读性。 - 单行和多行 HTML 元素内容换行两条规则被关闭,说明项目不强制标签内容必须换行,写法上更宽松。 - vue/name-property-casing 要求组件 name 用 PascalCase,vue/no-v-html 被关闭,意味着允许使用 v-html,这里要注意 XSS 风险,渲染用户输入时要自行过滤。 4. JavaScript 风格与质量规则 - 缩进统一为 2 个空格,SwitchCase 额外缩进 1 层;引号强制单引号,允许模板字符串;语句末尾不加分号。 - 逗号相关规则要求不留尾逗号、逗号后加空格、逗号写在行尾。 - 空格规则非常细致,包括箭头函数、关键字、括号内外、运算符、注释等,基本遵循主流 Vue 项目风格。 - 命名上 camelcase 被关闭,说明允许下划线命名;new-cap 要求构造函数首字母大写。 - 质量类规则大多为错误级别,比如禁止 eval、禁止重复声明、禁止未使用变量、禁止修改 const、禁止在 super 之前使用 this 等。 - no-console 被关闭,允许保留 console;no-debugger 则根据 NODE_ENV 判断,生产环境报错、开发环境放行。 - no-unused-vars 对参数不检查,只检查变量,避免回调函数里未使用参数频繁报错。 5. 值得注意的地方 - 这套配置整体偏严格,尤其空格和换行规则很多,新加入的开发者如果不熟悉容易频繁报错,建议配合编辑器的 ESLint 自动修复使用。 - 规则里对 Vue 模板的约束相对宽松,但对 JS 代码风格约束很细,