拒绝杂乱无章,规范化你的React项目代码!
2023-09-24 12:19:27
前言
前端开发规范的执行要由上到下,软硬兼施,除了成员们要有自觉性,最好在项目中配置代码规范化/格式化工具。我在配置这些工具时,踩了不少坑,后来看到这篇文章。从头到尾,轻松地将所有工具配置好。推荐规范化的项目,拒绝杂乱无章的代码风格,Keep your code clean!
准备工作
首先,确保你已经安装了Node.js和npm。如果没有,请访问Node.js官网下载并安装。然后,打开你的终端并运行以下命令安装create-react-app:
npm install -g create-react-app
使用create-react-app创建项目
接下来,创建一个新的React项目。在终端中运行以下命令:
create-react-app my-app
这将创建一个名为my-app的新项目。进入项目目录:
cd my-app
现在,你可以运行以下命令启动项目:
npm start
这将在你的浏览器中打开项目。
安装代码规范化/格式化工具
现在,我们需要安装一些代码规范化/格式化工具。这些工具将帮助我们保持代码的整洁和规范。
首先,安装ESLint。ESLint是一个JavaScript代码规范化工具。它可以帮助我们检查代码中是否存在语法错误、编码风格错误等问题。在终端中运行以下命令安装ESLint:
npm install --save-dev eslint
接下来,安装Prettier。Prettier是一个代码格式化工具。它可以帮助我们自动格式化代码,使代码更具可读性和一致性。在终端中运行以下命令安装Prettier:
npm install --save-dev prettier
最后,安装Husky。Husky是一个Git钩子工具。它可以帮助我们在提交代码时自动运行某些任务,例如检查代码规范和格式化代码。在终端中运行以下命令安装Husky:
npm install --save-dev husky
配置ESLint
现在,我们需要配置ESLint。在项目根目录下创建一个名为.eslintrc.json的文件,并添加以下内容:
{
"extends": "eslint:recommended",
"rules": {
"indent": ["error", 2],
"quotes": ["error", "double"],
"semi": ["error", "always"]
}
}
此配置将启用ESLint的推荐规则,并添加了一些额外的规则来强制使用2个空格缩进、双引号和分号。
配置Prettier
接下来,我们需要配置Prettier。在项目根目录下创建一个名为.prettierrc.json的文件,并添加以下内容:
{
"semi": false,
"trailingComma": "all",
"singleQuote": true,
"printWidth": 80,
"tabWidth": 2
}
此配置将禁用分号、启用尾随逗号、使用单引号、将打印宽度设置为80个字符,并将制表符宽度设置为2个空格。
配置Husky
现在,我们需要配置Husky。在项目根目录下创建一个名为.huskyrc.js的文件,并添加以下内容:
module.exports = {
hooks: {
"pre-commit": "lint-staged"
}
};
此配置将告诉Husky在每次提交代码前运行lint-staged命令。
安装Lint-Staged
现在,我们需要安装Lint-Staged。Lint-Staged是一个工具,它可以帮助我们在暂存代码时自动运行某些任务,例如检查代码规范和格式化代码。在终端中运行以下命令安装Lint-Staged:
npm install --save-dev lint-staged
配置Lint-Staged
现在,我们需要配置Lint-Staged。在项目根目录下创建一个名为.lintstagedrc.json的文件,并添加以下内容:
{
"*.{js,jsx}": [
"eslint --fix",
"prettier --write"
]
}
此配置将告诉Lint-Staged在暂存任何JavaScript或JSX文件时自动运行ESLint和Prettier。
测试
现在,我们可以测试一下我们的配置。在终端中运行以下命令:
npm run lint
这将运行ESLint检查代码规范。如果代码中存在问题,ESLint会报告这些问题。
npm run format
这将运行Prettier格式化代码。如果代码格式不正确,Prettier会自动将其格式化。
git add .
这将暂存所有更改。
git commit -m "Add code linting and formatting"
这将提交更改。
现在,你可以查看提交历史记录,你会看到ESLint和Prettier已经在提交代码前自动运行了。
总结
通过使用ESLint、Prettier、Husky和Lint-Staged,我们可以轻松地配置代码规范化/格式化工具,告别杂乱无章的代码风格,保持代码的整洁和规范。