项目搭建规范

Posted 忘忘碎斌bin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目搭建规范相关的知识,希望对你有一定的参考价值。

.editorconfig配置

editorconfig可以使不同 IDE 编辑器上处理同一项目的具有一致的编码风格

配置 .editorconfig文件

# http://editorconfig.org

root = true

[*] # 表示所有文件适用
charset = utf-8 # 设置文件字符集为 utf-8
indent_style = space # 缩进风格(tab | space)
indent_size = 2 # 缩进大小
end_of_line = lf # 控制换行类型(lf | cr | crlf)
trim_trailing_whitespace = true # 去除行首的任意空白字符
insert_final_newline = true # 始终在文件末尾插入一个新行

[*.md] # 表示仅 md 文件适用以下规则
max_line_length = off
trim_trailing_whitespace = false

Vscode安装插件

Vscode上要使该文件起作用,需安装插件: EditorConfig for VS Code

代码格式化工具 prettier

因为之前在脚手架创建的时候,就选择了,就可以不要再安装,如果需要再安装,则:

安装npm install prettier -D

配置.prettierrc文件

{
  "useTabs": false,
  "tabWidth": 2,
  "printWidth": 80,
  "singleQuote": false,
  "trailingComma": "none",
  "semi": true
}
  • useTabs:使用tab缩进还是空格缩进,选择false;
  • tabWidth:tab是空格的情况下,是几个空格,选择2个;
  • printWidth:当行字符的长度;
  • singleQuote:使用单引号还是双引号,选择true,使用单引号;
  • trailingComma:在多行输入的尾逗号是否添加,设置为 none
  • semi:语句末尾是否要加分号,默认值true,选择false表示不加;

配置.prettierignore忽略文件

/dist/*
.local
.output.js
/node_modules/**

**/*.svg
**/*.sh

/public/*

Vscode安装插件

测试

  • ctrl + s 保存代码;

可能会遇到ctrl + s无法保存的现象,试一下这种方法(本人也找了才误打误撞搞好)

然后再 vscode的setting.json内添加 "editor.formatOnSave": true, "editor.formatOnType": true,

  • 配置一次性修改命令;

    在package.json 的 scripts中配置脚本命令

      "prettier": "prettier --write ."
    

ESLint检测

配置环境:vue脚手架选择了ESLint那么会帮助自动搭建好ESLint环境

Vscode安装ESLint插件

解决问题:eslint和prettier配置冲突

  • **安装插件:**在脚手架配置时选择了 ESLint + prettier,那么就可以不要安装了。手动安装npm i eslint-plugin-prettier eslint-config-prettier -D

  • 添加prettier插件:在.eslintrc.js里的 extends的配置

extends: [
    'plugin:vue/vue3-essential',
    'eslint:recommended',
    '@vue/typescript/recommended',
    '@vue/prettier',
    '@vue/prettier/@typescript-eslint',
    'plugin:prettier/recommended'
  ]
  • 重启项目

git Husky和eslint

在git commit 时,无法确定提交的代码都符合eslint的规范,那么在git提交时,需要将其拦截,并且进行格式化。

Husky工具:husky是一个git hook工具,可以帮助触发git提交的各个阶段:pre-commit、commit-msg、pre-push

自动配置命令npx husky-init ; npm install

过程:安装husky相关的依赖 —>>> 在项目目录下创建 .husky 文件夹 —>>> 在package.json中添加一个脚本

操作:在commit时会执行一次 格式化代码

git commit规范

提交风格类似于这种:

安装npm install commitizen -D

安装&初始化npx commitizen init cz-conventional-changelog --save-dev --save-exact

代码提交npx cz

  • 更新的类型
Type作用
feat新增特性 (feature)
fix修复 Bug(bug fix)
docs修改文档 (documentation)
style代码格式修改(white-space, formatting, missing semi colons, etc)
refactor代码重构(refactor)
perf改善性能(A code change that improves performance)
test测试(when adding missing tests)
build变更项目构建或外部依赖(例如 scopes: webpack、gulp、npm 等)
ci更改持续集成软件的配置文件和 package 中的 scripts 命令,例如 scopes: Travis, Circle 等
chore变更构建流程或辅助工具(比如更改测试环境)
revert代码回退

代码提交验证:若仍使用git commit提交,信息不符合规范,那么就应该报错。

安装npm i @commitlint/config-conventional @commitlint/cli -D

配置commitlint.config.js文件

module.exports = {
  extends: ["@commitlint/config-conventional"]
};

使用husky生成commit-msg文件

npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'

可以的化就这样,创建失败的化就分开创建

  • 生成文件npx husky add .husky/commit-msg

  • 将文件内的undefined改成:npx --no-install commitlint --edit

以上是关于项目搭建规范的主要内容,如果未能解决你的问题,请参考以下文章

php Yoast SEO规范输出的代码片段

php Yoast SEO规范输出的代码片段

团队项目之代码规范

.Net 个人总结的代码规范

Springboot 手动搭建项目 --redis配置&日志完善+用户名

python 开发搭建目录规范