当前位置: 首页 > news >正文

Egg.js 项目的合理 ESLint 配置文件模板

 Egg.js 项目的合理 ESLint 配置文件模板

安装依赖

npm install eslint @babel/eslint-parser eslint-plugin-import eslint-plugin-promise eslint-plugin-node --save-dev
  • extends: 扩展了 eslint-config-egg 以及其他一些常用的插件配置。

  • parser: 使用 @babel/eslint-parser 作为解析器,支持最新的 JavaScript 语法。

  • parserOptions: 设置了解析器选项,包括 ECMAScript 版本和模块类型。

  • env: 设置了 Node.js 和 ES6 环境。

  • settings: 配置了导入解析器,支持 .js 和 .ts 文件。

  • rules: 添加了一些常用的 ESLint 规则,包括对控制台日志、未使用的变量、导入检查、Promise 检查和 Node.js 特定的规则

.eslintrc

{"extends": ["eslint-config-egg","plugin:import/errors","plugin:import/warnings","plugin:import/typescript","plugin:promise/recommended","plugin:node/recommended"],"parser": "@babel/eslint-parser","parserOptions": {"ecmaVersion": 2020,"sourceType": "module","requireConfigFile": false},"env": {"node": true,"es6": true},"settings": {"import/resolver": {"node": {"extensions": [".js", ".ts"]}}},"rules": {"no-console": "warn","no-unused-vars": ["error", { "argsIgnorePattern": "^_" }],"import/no-unresolved": "error","import/named": "error","import/namespace": "error","import/default": "error","import/export": "error","import/extensions": ["error", "always", { "js": "never", "ts": "never" }],"import/newline-after-import": "error","import/no-extraneous-dependencies": ["error", { "devDependencies": true }],"promise/always-return": "error","promise/no-return-wrap": "error","promise/param-names": "error","promise/catch-or-return": "error","node/no-missing-import": "error","node/no-unpublished-require": "error","node/no-unsupported-features/es-syntax": "error","node/process-exit-as-throw": "error","node/shebang": "error"}}

但如果同时使用prettier与eslint冲突  可以再补上安装

npm install eslint-config-prettier eslint-plugin-prettier --save-dev

这些工具可以帮助你关闭 ESLint 中与 Prettier 冲突的规则,并将 Prettier 作为 ESLint 的规则之一运行

最终配置为

{"extends": ["eslint-config-egg","plugin:import/errors","plugin:import/warnings","plugin:import/typescript","plugin:promise/recommended","plugin:node/recommended","plugin:prettier/recommended", // 添加 Prettier 插件"prettier" // 确保 Prettier 覆盖其他规则],"parser": "@babel/eslint-parser","parserOptions": {"ecmaVersion": 2020,"sourceType": "module","requireConfigFile": false},"env": {"node": true,"es6": true},"settings": {"import/resolver": {"node": {"extensions": [".js", ".ts"]}}},"rules": {"no-console": "warn","no-unused-vars": ["error", { "argsIgnorePattern": "^_" }],"import/no-unresolved": "error","import/named": "error","import/namespace": "error","import/default": "error","import/export": "error","import/extensions": ["error", "always", { "js": "never", "ts": "never" }],"import/newline-after-import": "error","import/no-extraneous-dependencies": ["error", { "devDependencies": true }],"promise/always-return": "error","promise/no-return-wrap": "error","promise/param-names": "error","promise/catch-or-return": "error","node/no-missing-import": "error","node/no-unpublished-require": "error","node/no-unsupported-features/es-syntax": "error","node/process-exit-as-throw": "error","node/shebang": "error","no-trailing-spaces": 1, // 禁用 no-trailing-spaces 规则"prettier/prettier": ["error", { "singleQuote": true, "semi": false }] // 配置 Prettier 规则}}

http://www.lryc.cn/news/464795.html

相关文章:

  • 算法专题七: 分治归并
  • 一个基于vue功能强大的表格组件--vxe-table的二次封装
  • CSS网页布局(重塑网页布局)
  • 计算机网络:数据链路层 —— 以太网(Ethernet)
  • 考研前所学c语言02(2024/10/16)
  • R语言绘图——坐标轴及图例
  • JDK中socket源码解析
  • Ansible自动化运维项目实战指南
  • MySQL【知识改变命运】10
  • Java学习教程,从入门到精通, Java 基础语法(4)
  • 反编译工具-Jclasslib的使用,与Java方法调用的探索
  • 力扣 简单 876.快慢指针
  • FineReport 计算同比增长
  • 从0开始深度学习(12)——多层感知机的逐步实现
  • 如何利用OpenCV和yolo实现人脸检测
  • 015集——c# 实现CAD excel交互(CAD—C#二次开发入门)
  • 【计网笔记】以太网
  • Java 入门基础篇14 - java面向对象思想以及特性
  • 第15篇:网络架构优化与综合案例分析
  • UI自动化测试实战
  • 东方智者颜廷利:以哲学思想促进世界和谐与无私奉献
  • 基于 springboot vue停车场管理系统 设计与实现
  • 如何验证ssl私钥和证书是否匹配?
  • MongoDB的基本操作
  • spring mvc后端实现过程
  • 102005
  • Cisco ACI环境给Leaf配置OOB带外管理IP方法
  • 免费送源码:Java+B/S+MySQL springboot电影推荐系统 计算机毕业设计原创定制
  • 数据清洗(脚本)
  • jmeter中发送post请求遇到的问题