使用 linters、prettier 和 husky 升级你的项目
大家好,如果您曾经参与过开源项目,或者任何多人协作的项目,那么您可能遇到过诸如提交约定不一致之类的问题。代码没有正确/均匀的缩进,或者代码中存在' '“和”的差异。 这实际上使代码库变得更加混乱。那么该如何克服这个问题呢?有很多预定义的插件/库可以帮助您解决上述所有问题。 因此,在本篇博文中,我们将讨论以下内容。" "
- ESLint(用于概括 js 代码的样式标准)
- Prettier(用于均匀缩进代码库)
- Husky(提交之前在本地机器上运行测试并提交约定检查,这样您就不会在之后遇到 linting 和测试失败错误)
注意:此 lint 风格仅供个人选择。您可以根据自己的 lint 和风格标准进行调整 :)
VS 代码扩展
(这是我的个人推荐,个人选择)
 如果你想跟着学习,我建议你下载它。下载时,你可以将下方代码复制到扩展程序搜索框中,然后会弹出扩展程序。点击“安装”,它就会添加到你的 VS Code 中。
- Eslint ==>dbaeumer.vscode-eslint
- 更漂亮 ==>esbenp.prettier-vscode
初始化和安装
在终端中打开项目并按相同顺序运行以下命令。
- 运行以下命令(如果未克隆并在本地机器上重新启动)
git init
- 运行以下命令(这是在您的项目中初始化 package.json)
npm init -y
- 运行以下命令(这将创建节点模块和 packge-lock.json)
npm i --save-dev eslint eslint-config-prettier eslint-plugin-prettier husky lint-staged prettier
埃斯林特
在项目根目录中创建文件.eslintrc.json并将以下内容粘贴到其中
{
    "env": {
      "es2020": true,
      "node": true
    },
    "extends": [
      "eslint:recommended",
      "plugin:prettier/recommended"
    ],
    "rules": {
      "linebreak-style": ["error", "unix"],
      "quotes": ["error", "single", { "allowTemplateLiterals": true }],
      "semi": ["error", "always"],
      "prefer-const": "error",
      "eqeqeq": ["error", "always"],
      "curly": ["error"]
    },
}
Prettier
现在在项目文件的根目录中创建.prettierrc并将以下内容粘贴到文件中
{
    "endOfLine": "lf",
    "useTabs": true,
    "singleQuote": true
}
Git 忽略
现在在项目根目录中创建.gitignore文件并将以下内容粘贴到文件中
/node_modules/
.env
哈士奇
现在在项目根目录中创建.huskyrc文件并将以下内容粘贴到其中
{
  "hooks": {
    "pre-commit": "lint-staged"
  }
}
现在转到 package.json 并在最后一个}之前添加此内容
"lint-staged": {
    "*.js": ["eslint --fix", "prettier --write"]
}
现在在终端中逐个运行以下命令
- 安装 Husky 到本地项目目录
npm install husky --save-dev
- 安装 Husky 包
npx husky install
- 初始化 Husky 包并安装依赖项
npx husky-init && npm install
这将创建 Husky 文件夹
现在,前往Husky 文件夹中的pre-commit文件,删除npm test命令。因为我们目前还没有测试。
- 安装常规提交样式
npm install --save-dev @commitlint/cli @commitlint/config-conventional
- 将命令添加到 commitlint.config.js 文件
echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js
- 添加 Husky 参考提交信息库
npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'
就这样!你已经用一些很酷的工具设置好了你的项目,它们可以简化你作为维护者或审阅者的工作。它们会照顾到你所有的代码风格指南。
你的 js 项目已全部设置完毕。如果你可以使用 js 进行配置,请参考Nicholas Carrigan 的说明。
参考 :
Eddie Jaoude Youtube 视频
Nicholas Carrigan 笔记
Commit lint org 
Huskey 官方文档
❤️感谢您的阅读❤️
🌏 喜欢 | 关注 | 分享 🌏
我的社交媒体: Twitter | LinkedIn | GitHub
 后端开发教程 - Java、Spring Boot 实战 - msg200.com
            后端开发教程 - Java、Spring Boot 实战 - msg200.com