zoukankan      html  css  js  c++  java
  • ESLint

    ESLint是一个用来识别 ECMAScript 并且按照规则给出报告的代码检测工具,使用它可以避免低级错误和统一代码的风格。ESLint被设计为完全可配置的,主要有两种方式来配置ESLint:

    • 在注释中配置:使用JavaScript注释直接把配置嵌入到JS文件中。
    • 配置文件:使用下面任一的文件来为全部的目录和它的子目录指定配置信息。
      • javascript:使用.eslintrc.js文件并导出一个包含配置的对象。
      • YAML:.eslintrc.yaml或者.eslintrc.yml
      • JSON:.eslintrc.json,并且此文件允许使用JS形式的注释
      • 废弃的用法:.eslintrc,此文件可以是JSON或者YAML
      • package.json:在package.json文件中创建eslintConfig属性,所有的配置包含在此属性中。

    这些文件的优先级则是按照以上出现的顺序(.eslintrc.js > .eslintrc.yaml > .eslintrc.yml > .eslintrc.json > .eslintrc > package.json)。

    可以被配置的信息主要分为3类:

    • Environments:你的 javascript 脚步将要运行在什么环境(如:nodejs,browser,commonjs等)中。
    • Globals:执行代码时脚步需要访问的额外全局变量。
    • Rules:开启某些规则,也可以设置规则的等级。

    安装


    • 全局安装
    npm i -g eslint
    
    • 局部安装(推荐)
    npm i -D eslint
    

    安装完毕后,接下来新建一个配置文件.eslintrc.js,或者使用如下的命令行来自动生成。

    eslint --init
    

    配置


    指定执行环境

    JavaScript 代码可以运行在浏览器或 nodejs 等环境中,每个环境的全局变量都不尽相同(如 nodejs 中没有 DOM 相关的全局变量)。在配置文件中可以自由的指定执行环境。

    // .eslintrc.js
    module.exports = {
      env: {
        browser: true,
        node: true,
      },
    };
    

    所有的环境可以在官网上查询。

    指定全局变量

    可以在配置文件或注释中指定额外的全局变量,false表明变量只读:

    • 注释:
    /* global var1, var2 */
    /* global var1:false, var2:false */
    
    • js 文件:
    // .eslintrc.js
    module.exports = {
      globals: {
        var1: true,
        var2: true,
      },
    };
    

    规则

    在配置文件中可以设置一些规则。

    这些规则的等级有三种:

    • "off" 或者 0:关闭规则。
    • "warn" 或者 1:打开规则,并且作为一个警告(不影响exit code)。
    • "error" 或者 2:打开规则,并且作为一个错误(exit code将会是1)。

    例如:

    • js 文件
    // .eslintrc.js
    module.exports = {
      rules: {
        eqeqeq: 'off',
        curly: 'error',
      },
    };
    
    • 注释文件
    /* eslint eqeqeq: "off", curly: "error" */
    /* eslint eqeqeq: 0, curly: 2 */
    

    也可以在注释中关闭所有或者某个规则:

    /* eslint-disable */
    /* eslint-enable */
    
    /* eslint-disable no-alert, no-console */
    /* eslint-enable no-alert, no-console */
    

    具体的规则可以在官网上找到,或者使用别人写好的配置,例如eslint-config-airbnb

    使用方法


    通过命令行工具来使用 eslint 。

    eslint [options] file.js [file.js] [dir]
    

    除了使用命令行还可以配合 webpack 或者配合编辑器的插件(如vscode-eslint)来使用

  • 相关阅读:
    你在寻找Vue3移动端项目框架嘛?请看这里
    vue init webpack xxx很慢?办它!
    TypeScript学习2TypeScript基础静态类型和对象类型
    百度地图自定义marker、文本标注
    TypeScript学习1开发环境搭建
    <三>computed 和事件的绑定
    <七>vue脚手架
    <八>vue脚手架项目结构
    <九>组件和路由
    <五>子父组件间的交互
  • 原文地址:https://www.cnblogs.com/xuxiaoxia/p/7466732.html
Copyright © 2011-2022 走看看