在前端引入 ESLint 代码检查

阅读时长 5 分钟读完

什么是 ESLint ?

ESLint 是一个 JavaScript 代码静态检查工具,它可以用来检查 ECMAScript/JavaScript 代码,不仅可以检查语法正确性,而且可以检查代码风格、错误和潜在的 Bug 等。ESLint 可以根据自定义的规则对代码进行检查,规则可以通过插件扩展或自行编写。

引入 ESLint 的优点

  1. 提高代码质量:ESLint 可以根据规则检查代码质量,代码质量得到提升。
  2. 统一代码风格:ESLint 可以规范代码风格,使得团队内成员编写的代码风格保持一致,降低阅读代码的难度,提高开发效率。
  3. 避免潜在的 bug:ESLint 可以检测代码中可能存在的 bug,避免出现一些无法预知的 runtime bug。
  4. 学习新技能:使用 ESLint 可以学习与了解更多的编程规范和技能.

如何引入 ESLint

ESLint 是基于 Node.js 运行的,因此需要使用 npm 进行安装。在安装之前,需要确保本地已安装 Node.js 环境.

  1. 全局安装 ESLint
  1. 在项目中引入 ESLint

PS:--save-dev表示将依赖项安装到 devDependencies,因为浏览器并不认识 ESLint,它只是在开发环境中使用。

配置 ESLint

安装完成后,需要在项目根目录中创建 .eslintrc 文件,并在文件中配置规则。

规则主要包括以下两种:

  1. ESLint 自带的规则:eslint.org/docs/rules/
  2. 第三方规则库:例如 airbnbstandardgoogle 等。

那具体怎么写规则呢!下面是我工作中的一个项目里面用户存储 Session 的代码片段,一来看看具体代码的规范应该怎么设定。

-- -------------------- ---- -------
------ ----- ---- ---------

----- ----- - --- -------

------ ------- ----- ------- -
  ------ ----- --- ----- -
    ----- ---- - ----- ---------------------------

    -- ------- -
      ------ ----
    -

    --- -
      ------ ----------------
    - ----- --- -
      ------ ----
    -
  -

  ------ ----- --- ----- ----- ---- -
    ----- --------------------------- --------------------- ----- ----
  -

  ------ ----- ------- ----- -
    ----- ---------------------------
  -
-
展开代码

根据项目需求对代码风格和规范进行了一定的制定,有关规范部分文件中会给出,这儿主要介绍 eslint-config-airbnb-base 配置规则。

首先,需要在项目中安装 eslint-config-airbnb-base

然后在 .eslintrc.json 中写入如下内容:

-- -------------------- ---- -------
-
  ---------- ----------------
  ---------- -----------
  -------- -
    ------------- ------
    -------------------- -
      --------
      --------
      -
        ----- -------
      -
    --
    ----------------------- -
      --
      -
        --------- ------
      -
    -
  --
  ----------- -
    ------------------ -
      ------- -
        -------- --------
        ------------- -------
      -
    -
  -
-
展开代码
  • extends: ['airbnb-base']:继承了 eslint-config-airbnb-base 的规则,并做了合理修改。
  • plugins: ['import']:ESLint 默认不支持对 ES6 的模块语法进行检查,通过引入 eslint-plugin-import 插件来支持。
  • no-console: 'off':允许在代码中使用 console。
  • import/extensions: 'never':禁止在导入语句中使用文件扩展名。
  • import/no-unresolved:确定导入的模块是否可以解析,可以通过设置一个正则忽略掉某些导入路径。
  • import/resolver:将项目中的每一个目录配置为一个根目录,并设置必要的解析规则。

效果呈现

有了 ESLint 工具的帮助,我们只需要静静地等待着它悄悄地默默地运作。下面就来展示一下 ESLint 检测过后的代码是否合乎规范。

结语

使用 ESLint 可以帮助开发者提高代码质量,保证代码规范性和一致性,减少潜在的 Runtime Bug,大致配置步骤也已经介绍完毕,是时候开启 ESLint 代码检查的新篇章了。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67bf6c120c976d473a408c82

纠错
反馈

纠错反馈