给 react 项目中加入 eslint + prettier

前言

react 项目开始时可能要配置不少东西,这里就直接配置一些常用的便捷类的配置吧,至少短期内应该是可以可以使用的,时间长了,还是要重新配置一下最好,不过使用也没问题,就是不是最新的了😂

配置 eslint 代码规范

js 复制代码
yarn add eslint --dev
npx eslint --init

会自动生成 .eslintrc.js 文件 我们可以不配置,也可以点进去配置一下 rules 等信息,默认长这样

js 复制代码
module.exports = {
    "env": {
        "browser": true,
        "es2021": true
    },
    "extends": [
        "eslint:recommended",
        "plugin:@typescript-eslint/recommended",
        "plugin:react/recommended"
    ],
    "overrides": [
        {
            "env": {
                "node": true
            },
            "files": [
                ".eslintrc.{js,cjs}"
            ],
            "parserOptions": {
                "sourceType": "script"
            }
        }
    ],
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
        "ecmaVersion": "latest",
        "sourceType": "module"
    },
    "plugins": [
        "@typescript-eslint",
        "react"
    ],
    "rules": {
    }
}

配置 prettier 代码格式化工具

js 复制代码
yarn add prettier --dev

项目主目录创建 .prettierrc 文件,加入下面几个

js 复制代码
{
    "trailingComma": "all",
    "tabWidth": 2,
    "semi": false, //;false舍弃
    "singleQuote": true //单引号
}

package.json 中的 scripts 加入下面就可以直接全局格式化了

js 复制代码
 "scripts": {
    ...
    "prettier": "prettier --write ."
  },

vscode + prettier

如果想充分利用 vscode 更便利使用,下载插件 pertter - coder formatter,如下所示

在项目根目录中加入下面文件 .vscode/settings.json(即创建一个 .vscode 文件夹,里面创建 settings.json 文件)

js 复制代码
{
    // eslint主要功能设定规范,捕获不规范的错误等 美化代码或者格式化代码功能交给prettier
    "eslint.format.enable": false,
    //打开保存格式化功能(保存代码的时候自动格式化)
    "editor.formatOnSave": true,
    //使用 prettier  作为默认格式化程序
    "editor.defaultFormatter": "esbenp.prettier-vscode"
}

如下所示

这样我们就可以在开发中,直接右键格式化代码,直接应用 prettier 格式化操作了

避免eslint与prettier冲突

为了避免 eslintprettier 冲突处理,需要加入 eslint-config-prettier(开发项目时不一定冲突,避免一些特殊的情况)

js 复制代码
yarn add eslint-config-prettier --dev

其他配置简单参考

如果顺道配置 less,则参考我之前的文章配置一下即可,less 配置 这篇文章,设置代理 这篇文章

测试参考案例

配置案例demo,typescript版,可供参考😂 githubgitee

js 复制代码
一般直接使用 create-react-app 命令,或者别人配置好的直接使用即可
//js版本
npx create-react-app 项目名字
yarn create react-app 项目名字
//ts版本
npx create-react-app 项目名字 --template typescript
yarn create react-app 项目名字 --template typescript
相关推荐
cv咸鱼仔7 分钟前
关于TS类型系统中的协变与逆变
typescript
sophie旭9 分钟前
一个偶现bug引发的onKeyDown 和 onChange之战
前端·javascript·react.js
Sheldon一蓑烟雨任平生1 小时前
10 分钟速通 TypeScript 核心
typescript·接口·类型断言·typescript 类型·联合类型·类型别名·对象类型
光影少年1 小时前
React Native第六章
javascript·react native·react.js
千里马-horse2 小时前
搭建 React Native 库
javascript·react native·react.js·native library
月下点灯2 小时前
🏮一眼就会🗂️大文件分片上传,白送前后端全套功法
javascript·typescript·node.js
im_AMBER8 小时前
React 17
前端·javascript·笔记·学习·react.js·前端框架
Cxiaomu11 小时前
React Native App 图表绘制完整实现指南
javascript·react native·react.js
fthux12 小时前
孩子的名字有救了
微信小程序·typescript·ai编程
阿桂有点桂16 小时前
React使用笔记(持续更新中)
前端·javascript·react.js·react