We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tip: 本配置文档是假设你用的是mac前提,如果你用的是window系统,可能配置上会有区别,那么请自行研究,欢迎贡献完善本文档!
写在前面: 本文档只是从介绍 开发工具配置 上来统一代码风格和代码检测,目的是希望方便日后每个前端的小伙伴加入后参照该文档进行本地开发环境配置。而具体编码风格, 例如: (1)、每行代码结束必须要有分号;(有没有是风格问题,我们希望这里能够统一) (2)、使用 2空格(javascript使用2个空格,css使用4空格)缩进; 我们会在另外一个文档来对前端编码规范做详细说明。
本文档 将对你的开发工具配置给出建议,目的是为了统一团队内的代码风格。 我们通过 Eslint、Prettier、Csscomb 三个插件配置来达到目的。
javascript:
可见,代码格式统一的问题,交给Prettirer再合适不过了。和Eslint配合使用,风味更佳。
在vscode 中直接搜 prettier,第一个就是,直接安装即可。
安装成功后, Idea 默认的格式化处理就会被prettier代替, 默认快捷键是alt + shift + f
安装成功后, vscode 的设置选项中就会有 prettier 相关的配置节点。
在项目的根目录下,新建一个prettier 的配置文件,名为: .prettierrc, 内容如下:
.prettierrc
{ "tabWidth": 2, "singleQuote": true, //使用单引号 "semi": true, // 句末加分号 "trailingComma": "es5", //最后一个对象元素加逗号([a,b,c,d,] 数组项d后面的逗号就是尾逗号)。可选项有none/es5/all "printWidth": 140, // 换行字符串阈值 "arrowParens": "avoid", // (x) => {} 是否要有小括号 "bracketSpacing": true, //对象,数组加空格 "overrides": [ { "files": ".prettierrc", "options": { "parser": "json" } } ], "proseWrap": "preserve" // 是否要换行 }
之后,去设置文件下,添加或修改 "editor.formatOnSave": true, 意思是每次保存文件时执行格式话。
"editor.formatOnSave": true
为什么用 beautiful 插件呢?因为我发现 prettier 对单独的 sass 文件没有格式化。。尼玛 奇怪了。所以,就引入 beautiful 这个插件,但是考虑到它格式化与prettier的格式化之间存在冲突覆盖,所以我们只用它来单独格式化特定的某几个文件 —— 如 css\sass\html 等(对的,这里限制来n beautiful 这个插件格式化的范围,目的是为了避免和 prettier 产生冲突);
css\sass\html
beautiful
prettier
在设置中添加下面代码:
} ... "beautify.language": { "html": ["html", "htm"], "css": ["css", "scss"] } ... }
安装 Csscomb。完了之后在用户设置下面添加如下代码:
.... "csscomb.formatOnSave": true, "csscomb.preset": {} ....
"csscomb.preset": {} 这部分可以分两部分看,分别是排序规则——sort-order,和其他自定义规则。
** 其他规则: **
"csscomb.preset": { "exclude": [ ".git/**", "node_modules/**", "bower_components/**" ], "always-semicolon": true, //一直使用分号 "block-indent": " ", //缩进 "color-case": "lower", //颜色值小写 "color-shorthand": true, "element-case": "lower", //元素名小写 "eof-newline": true, "leading-zero": false, "lines-between-rulesets": 1, //不同分类的规则之间 加一行进行 分隔 "quotes": "single", //使用单引号 "remove-empty-rulesets": true, //自动删除空规则 "space-after-colon": " ", // ':' 后两空格 "space-after-combinator": " ", "space-after-opening-brace": "\n", "space-after-selector-delimiter": "\n", "space-before-closing-brace": "\n", "space-before-colon": "", "space-before-combinator": " ", "space-before-opening-brace": " ", // “{” 前使用一个空格 "space-before-selector-delimiter": "", "space-between-declarations": "\n", // 每行只显示一条样式规则 "strip-spaces": true, "unitless-zero": true, "vendor-prefix-align": true, "sort-order": [
第二部分: 排序规则以及呈现样式
有三种 排序规则 可选,可以在 https://github.com/csscomb/csscomb.js/tree/master/config 找到,选择一种自己喜欢的即可。
打开vscode工具的设置(快捷键 Ctrl + ,)里面有两个设置。
由于需要同时使用prettier和eslint,而prettier的一些规则和eslint的一些规则可能存在冲突,例如prettier字符串默认是用双引号而esLint定义的是单引号的话这样格式化之后就不符合ESLint规则了。
所以要解决冲突就需要在Prettier的规则配置里也配置上和ESLint一样的规则,直接覆盖掉,ESLint和Prettier的配置文件内容如下:
.eslintrc.js 配置使用单引号、结尾不能有分号。
module.exports = { root: true, env: { node: true }, extends: ['plugin:vue/essential', 'eslint:recommended'], rules: { 'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off', 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off', //强制使用单引号 quotes: ['error', 'single'], //强制不使用分号结尾 semi: ['error', 'never'] }, parserOptions: { parser: 'babel-eslint' } }
配置使用单引号、结尾不能有分号。
{ //开启 eslint 支持 "eslintIntegration": true, //使用单引号 "singleQuote": true, //结尾不加分号 "semi": false }
也可以直接在vscode工作区配置prettier:
{ //开启 eslint 支持 "prettier.eslintIntegration": true, //使用单引号 "prettier.singleQuote": true, //结尾不加分号 "prettier.semi": false, }
The text was updated successfully, but these errors were encountered:
No branches or pull requests
开发工具配置
本文档 将对你的开发工具配置给出建议,目的是为了统一团队内的代码风格。
我们通过 Eslint、Prettier、Csscomb 三个插件配置来达到目的。
javascript:
Prettier 与 Eslint
两者区别
可见,代码格式统一的问题,交给Prettirer再合适不过了。和Eslint配合使用,风味更佳。
安装配置 Prettier
介绍
安装配置 与 使用
安装
在vscode 中直接搜 prettier,第一个就是,直接安装即可。
安装成功后, Idea 默认的格式化处理就会被prettier代替, 默认快捷键是alt + shift + f
配置
安装成功后, vscode 的设置选项中就会有 prettier 相关的配置节点。
在项目的根目录下,新建一个prettier 的配置文件,名为:
.prettierrc
, 内容如下:之后,去设置文件下,添加或修改
"editor.formatOnSave": true
, 意思是每次保存文件时执行格式话。beautiful 插件 (现在已经不建议使用了!)
为什么用 beautiful 插件呢?因为我发现 prettier 对单独的 sass 文件没有格式化。。尼玛 奇怪了。所以,就引入 beautiful 这个插件,但是考虑到它格式化与prettier的格式化之间存在冲突覆盖,所以我们只用它来单独格式化特定的某几个文件 —— 如
css\sass\html
等(对的,这里限制来nbeautiful
这个插件格式化的范围,目的是为了避免和prettier
产生冲突);在设置中添加下面代码:
Csscomb: 规范样式代码格式
安装 Csscomb。完了之后在用户设置下面添加如下代码:
"csscomb.preset": {} 这部分可以分两部分看,分别是排序规则——sort-order,和其他自定义规则。
** 其他规则: **
第二部分: 排序规则以及呈现样式
有三种 排序规则 可选,可以在 https://github.com/csscomb/csscomb.js/tree/master/config 找到,选择一种自己喜欢的即可。
补充 - VsCode 插件设置
打开vscode工具的设置(快捷键 Ctrl + ,)里面有两个设置。
ESLint 和 Prettier 的冲突修复
由于需要同时使用prettier和eslint,而prettier的一些规则和eslint的一些规则可能存在冲突,例如prettier字符串默认是用双引号而esLint定义的是单引号的话这样格式化之后就不符合ESLint规则了。
所以要解决冲突就需要在Prettier的规则配置里也配置上和ESLint一样的规则,直接覆盖掉,ESLint和Prettier的配置文件内容如下:
.eslintrc.js
配置使用单引号、结尾不能有分号。
.prettierrc
配置使用单引号、结尾不能有分号。
也可以直接在vscode工作区配置prettier:
The text was updated successfully, but these errors were encountered: