项目质量监测(二)02-Lint工具之ESLint——起步与安装 & ESLint初始化-.eslintrc.js文件 & 项目.eslintignore-忽略文件

项目质量监测(二)02-Lint工具之ESLint——起步与安装 & ESLint初始化-.eslintrc.js文件 & 项目.eslintignore-忽略文件

起步与安装
  1. 在项目中去使用,

    1.1、新建文件夹DEMO,在其内打开命令行窗口

    // npm init 指令会在项目根目录下生成 package.json 文件。
    npm init
    
    // --save-dev 会把 eslint 安装到 package.json 文件中的 devDependencies 属性中,意思是只是开发阶段用到这个包,上线时就不需要这个包了。
    npm install eslint --save-dev
    

    npm init -y   //初始化npm项目
    
    // 局部安装eslint
    npm install eslint --save-dev
    //或
    npm install eslint -D
    
    • 使用npm run

    1.2、在生成的package.json文件中,替换原文件

    新增package.json 脚本,或者使用 npx命令

    "scripts": {
        // "test": "echo \"Error: no test specified\" && exit 1"  //默认生成的文件
        "lint": "eslint src",  //"lint": "eslint app.js",
        "lint:create": "eslint --init"
    }
    

    然后使用run命令:

    npm run lint
    
    • 直接使用npx命令:

    1.3、执行eslint

    npx eslint --init  //或 npx eslint
    
    // 或者
    ./node_modules/.bin/eslint --init
    
  2. 在全局使用

    npm install -g eslint  //不推荐全局安装,eslint在不断更新;单独安装跟着项目走,能使用最新特性
    
ESLint初始化

配置方法使用 eslint --init方法

➜ npx eslint --init
? How would you like to use ESLint? (Use arrow keys)
  To check syntax only 
❯ To check syntax and find problems   //默认选择语法规范并查找问题
  To check syntax, find problems, and enforce code style 
  
? What type of modules does your project use? (Use arrow keys)  //项目中会使用什么模块
❯ JavaScript modules (import/export) 
  CommonJS (require/exports) 
  None of these 
  
// 这里可以针对你的开发项目进行配置
? Which framework does your project use? 
  React 
  Vue.js 
❯ None of these   //不使用任何框架,单纯练习

// 可以配置代码运行的地方,是浏览器还是Node环境?
? Where does your code run? 
❯◉ Browser  //浏览器环境
 ◉ Node  // node环境
 
// 最先在哪里缓存
? What format do you want your config file to be in? (Use arrow keys)
❯ JavaScript   //会生成.eslintrc.js文件
  YAML 
  JSON 

// 成功创建了配置文件
? What format do you want your config file to be in? JavaScript
Successfully created .eslintrc.js file in /Users/itheima/Downloads/Demo

配置文件.eslintrc.js

废弃的用法:.eslintrc,eslint使用配置的顺序:.eslintrc.js > .eslintrc.yaml > .eslintrc.yml > .eslintrc.json > .eslintrc > package.json

.eslintrc.js文件:

module.exports = {
    "env": {
        "browser": true,
        "es6": true,
        "node": true
    },
    "extends": "eslint:recommended",
    "globals": {
        "Atomics": "readonly",
        "SharedArrayBuffer": "readonly"
    },
    "parserOptions": {
        "ecmaVersion": 2018,
        "sourceType": "module"
    },
    "rules": {
    }
};

再来看看,yaml文件配置:

env:
  browser: true
  es6: true
  node: true
extends: 'eslint:recommended'
globals:
  Atomics: readonly
  SharedArrayBuffer: readonly
parserOptions:
  ecmaVersion: 2018
  sourceType: module
rules: {}

该文件导出一个对象,对象包含属性 envextendsparserOptionspluginsrules 五个属性:

  • env:指定脚本的运行环境。每种环境都有一组特定的预定义全局变量,(如:nodejs,browser,commonjs等)中。

  • parserOptions:用于指定想要支持的JavaScript语言选项

    • ecmaVersion - 默认设置为3,5(默认), 你可以使用 6、7、8 或 9 来指定你想要使用的 ECMAScript 版本。你也可以用使用年份命名的版本号指定为 2015(同 6),2016(同 7),或 2017(同 8)或 2018(同 9)

    • sourceType - 设置为 "script" (默认) 或 "module"(如果你的代码是 ECMAScript 模块)。

    • ecmaFeatures
      

      - 这是个对象,表示你想使用的额外的语言特性:

      • globalReturn - 允许在全局作用域下使用 return 语句
      • impliedStrict - 启用全局 strict mode (如果 ecmaVersion 是 5 或更高)
      • jsx - 启用 JSX
  • globals:执行代码时脚步需要访问的额外全局变量。

  • rules:开启某些规则,也可以设置规则的等级。

  • extends: 对默认规则进行扩展,可以使用Airbnb,或者Standard规则。

.eslintignore-项目忽略文件

可以在项目根目录创建,告诉ESLint忽略某些文件或者目录。相当于.gitignore都是纯文本文件。
例如

# 注释,忽略文件node_modules**/.jsbuild

常见的eslintignore内容:

node_modules/*
**/node_modules/*
dist/*
/build/**
/coverage/**
/docs/**
/jsdoc/**
/templates/**
/tests/bench/**
/tests/fixtures/**
/tests/performance/**
/tmp/**
/lib/rules/utils/unicode/is-combining-character.js
test.js
!.eslintrc.js
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误是因为您的.eslintrc.js配置文件中使用了未知的环境键"es2022"。该错误可能是因为您的ESLint版本较旧,不支持"es2022"这个环境键。解决方法是更新ESLint版本或者修改配置文件中的环境键。 要更新ESLint版本,您可以运行以下命令: npm install eslint@latest --save-dev 然后,您可以尝试重新运行您的代码进行检查。如果问题仍然存在,您可以打开.eslintrc.js文件并将"es2022"这个环境键修改为您支持的ES版本,例如"es2021"。 另外,您还可以检查一下您的配置文件中是否有其他未知的环境键。如果有,您也可以按照类似的方法进行修改或删除。 希望这个解决方案能够帮到您解决问题。如果您还有其他问题,请随时询问。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [ERROR Failed to compile with 1 errors No ESLint configuration found.](https://blog.csdn.net/renluoluo_6464/article/details/114287583)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [tslint-config-eslint:另一个TSLint配置禁用所有由eslint或@ typescript-eslint处理的规则。](https://download.csdn.net/download/weixin_42134240/15775150)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值