刚开始学习react,发现官方脚手架里没有提供eslint,对于我这个有代码洁癖的人来说不能忍啊,下面是我引入eslint的过程

一 、安装依赖
npm i eslint eslint-config-airbnb eslint-config-prettier eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-prettier eslint-plugin-react babel-eslint babel-plugin-import  --save-dev
二、创建eslint 和 prettier配置文件

创建 .eslintrc.js, 也可以使用json格式的,具体可以查看eslint官方文档
配置如下:

module.exports = {'env': {'browser': true,'es6': true,'node': true},'extends': ['airbnb', 'plugin:prettier/recommended'],'parser': 'babel-eslint','parserOptions': {'ecmaFeatures': {'jsx': true}},'plugins': ['react'],'rules': {// 关闭react默认的props-type验证'react/prop-types': [0],//关闭使用解构赋值的检测'react/destructuring-assignment': [0, 'always'],// 解决require报错问题'import/no-extraneous-dependencies': ['error', { 'devDependencies': true }]}
}

创建.prettierrc 配置文件,可覆盖eslint规则,具体规则配置请查看prettier 官方文档
配置如下:

{"jsxSingleQuote": true,"printWidth": 120,"tabWidth": 2,"semi": false,"singleQuote": true,"trailingComma": "none","jsxBracketSameLine": true
}

到这里基本配置就完成了,项目也拥有了eslint校验的功能了

扩展说明

在webstrom里面使用prettier进行自动格式化

  1. 在设置里面打开eslint校验工具
  2. 在设置里面启动prettier格式化工具

  3. 4
    然后代码保存时就会自动格式化了

在vscode里面保存也能自动格式化
4. 安装eslint prettier 插件扩展


这里注意一下,就是如果你的项目文件里没有prettier配置文件,格式化的时候代码就会格式化成不是你想要的格式,出现这样的情况你可以在vscode prettier插件里面根据官方文档配置一下,或者在你的项目里面创建prettier配置文件 如:.prettierrc

  1. 在vscode 里面修改设置
 "eslint.autoFixOnSave": true,// 根据需求自定义你要检测的文件格式"eslint.validate": ["javascript","javascriptreact",],"editor.tabSize": 2,// 关闭vscode默认的格式化保存"editor.formatOnSave": false,

到这里,配置就完成了

git commit 的时候 代码自动格式化并检查代码规范
  1. 我用的是pre-commit, (你可以根据自己爱好选用其他的哈)
    插件地址 https://pre-commit.com/
npm i pre-commit --save-dev
  1. 然后在你的package.json 里面设置
// 先在你的 scripts 里面定义 eslint校验和修复命令
"scripts": {"lint": "eslint --ext .js --ext .jsx src","lint-fix": "eslint --fix --ext .js --ext .jsx src"},// 然后再在你的package.json里面加入以下代码// 这里面值需要和你的scripts命令一一对应才能有效,如果还有其他命令直接在lint 命令后添加就行"pre-commit": "lint-fix lint"

如有不足之处,敬请各位大佬批评指正!
QQ 交流 2770723534

react中使用eslint+prettier+airbnb校验代码风格相关推荐

  1. 前端通过eslint+prettier+husky统一代码风格

    背景 多人协作项目,会遇到每个人都有自己的代码风格.所以需要通过工具来统一代码风格. husky是什么? 当您提交或推送时,您可以使用 husky 来检查您的提交消息.运行测试.检查代码等Husky ...

  2. 从esLint+Prettier开始格式化代码

    1. 促使我要代码格式化的原因 代码格式化和代码规范对研发者来说,都并不陌生.随手的保存,随手的格式化代码,总让我们的代码更加漂亮.但是我们在一次次的格式化中,偶尔也有一些问题. 在开发同一个项目时, ...

  3. VSCode中使用 eslint+prettier完成代码格式化以及自动化整理

    如果在一个大型项目中会有多个人一起去开发,为了使每个人写的代码格式都保持一致,就需要借助软件去帮我们保存文件的时候,自己格式化代码 配置 ESLInt.js vscode软件下载一个ESLint,在到 ...

  4. vue中使用 eslint+prettier

    ESLint 主要解决了两类问题,但其实 ESLint 主要解决的是代码质量问题.另外一类代码风格问题 这个应该是eslint的报错问题,那么在vue2中如何使用eslint和eslint自动修复呢? ...

  5. webpack中利用eslint对js进行代码格式检校

    1.下载多个相关插件 npm i -D eslint eslint-config-airbnb-base eslint-webpack-plugin eslint-plugin-import 2.we ...

  6. Java中手机号、身份证号校验代码

    以下是一个Java的校验手机号码的代码: public static boolean validatePhoneNumber(String number) {/*** 校验手机号码是否合法*/Patt ...

  7. antd + react model自定义footer_使用ESLint+Prettier规范React+Typescript项目

    项目开发过程中,大多数时候我们使用别人搭建好的脚手架编写代码,是项目的参与者.对于一些细节往往被忽略了.其中代码检测本身是一类非常简单的配置,但涉及不同框架和语言组合使用的时候,可能比想象中要困难,本 ...

  8. eslint规范_规范统一前端代码风格

    背景 众所周知,前端项目的代码质量和代码格式的校验是不可或缺的.很早之前在一个人开发的时候,脚手架生成vue项目的时候都没有打开过eslint,后面有位大佬加入,给boss说,加了个插件(eslint ...

  9. vscode+CRA+TypeScript+eslint+prettier+stylelint+husky+lint-staged完整版配置

    最近在做一个react项目,需要统一和规范代码风格,并且实现git管理,规范提交.所以基于CRA脚手架搭建项目整体框架,并自定义配置相关需求. CRA 在目标文件夹下打开cmd,项目使用ts开发,输入 ...

  10. vue+eslint+prettier格式化

    vue项目+eslint自动格式化 背景 手动格式化 命令行指令 vscode设置 自定义校验规则 eslint扩展配置文件 eslint:recommended plugin:vue/vue3-es ...

最新文章

  1. Java 代理(proxy)模式
  2. DEBUGnbsp;设置监视点:判断变量值
  3. 【网络基础】URI 和 URL 的纠缠
  4. Julia程序设计2 数值类型
  5. DayDayUp:寒门女孩考入北大→换角度看待表达《感谢贫穷》—关于吃苦与穷~~~Python之wordcloud词云图可视化
  6. 如何搭建MGRE——实验
  7. 神策数据成林松:数据智能在业务场景下的应用(附 PPT 下载)
  8. 文件操作相关的系统函数
  9. 老板让我十分钟上手nx-admin
  10. 写给准备学习Linux的人
  11. 关于vmware虚拟机硬件里没有软盘驱动器,而操作系统里还有的解决方法
  12. 【位运算经典应用】 N皇后问题
  13. 计算机系毕业论文绪论,本科毕业论文绪论范文
  14. Android 微信授权登陆
  15. html页眉页脚独立,word中怎样单独页面设置页眉
  16. 趋势跟踪系统的形成历程
  17. Hadoop No FileSystem for scheme “hdfs“ 客户端环境变量配置
  18. ALS爱立思常见问题汇总
  19. LibreOJ10155 数字变换 ------ 树形dp
  20. matlab怎么列向量归一化语句,matlab向量归一化

热门文章

  1. 一款炫丽的网页播放器插件
  2. 云服务器的部署形式之一私有云介绍
  3. mysql只读模式_mysql 只读模式详解
  4. SQL Server卸载不干净和重新安装问题
  5. MySQL数据库管理系统是什么_什么是数据库管理系统?
  6. 计算机网络修复提示DNS服务器,dns被劫持或提示配置错误,该怎么解决
  7. 超简单! 一个标签搞定跑马灯,纯css制作跑马灯效果
  8. 这篇文章能让你明白经验模态分解(EMD)——IMF的物理含义
  9. luci编程 openwrt_openWRT之Luci简介
  10. python for循环次数_Python for循环