vscode自动格式化代码ESlint+stylelint+VSCode自动格式化代码vscode eslint格式化快捷键




vscode自动格式化代码ESlint+stylelint+VSCode自动格式化代码vscode eslint格式化快捷键

2022-07-21 2:12:16 网络知识 官方管理员

vscode自动格式化代码(ESlint+stylelint+VSCode自动格式化代码)(1)

eslint格式化js代码

本文用Vue项目做示范。

利用VueCLI创建项目时要将ESlint选上,下载完依赖后,用VSCode打开项目。

安装插件ESLint,然后File->Preference->Settings(如果装了中文插件包应该是文件->选项->设置),搜索eslint,点击Editinsetting.json

vscode自动格式化代码(ESlint+stylelint+VSCode自动格式化代码)(2)

将以下选项添加到配置文件

"editor.codeActionsOnSave":{"source.fixAll":true,},

配置完之后,VSCode会根据你当前Vue项目下的.eslintrc.js文件的规则来验证和格式化代码。

PS:自动格式化代码在保存时自动触发,目前试了JS以及vue文件中的JS代码都没问题,html和vue中的html和css无效。

TypeScript

TypeScript如果想要自动格式化,需要在npm和vscode下载tsilnt插件:

npmi-Dtslint

vscode自动格式化代码(ESlint+stylelint+VSCode自动格式化代码)(3)

然后再配置好你项目里的的jslint配置文件,它无法和eslint的配置文件共用,规则也不一样。

不过我发现tslint有点缺陷,例如无法自动格式化缩进,这个可以用shift+ alt+f来实现。

扩展

其实还是有办法格式化vue文件中的html和css代码的,利用vscode自带的格式化,快捷键是shift+ alt+f,假设你当前vscode打开的是一个vue文件,按下shift+ alt+f会提示你选择一种格式化规范,如果没提示,那就是已经有默认的格式化规范了(一般是vetur插件),然后vue文件的所有代码都会格式化,并且格式化规则还可以自己配置,如下图所示,可以根据自己的喜好来选择格式化规则。

vscode自动格式化代码(ESlint+stylelint+VSCode自动格式化代码)(4)

因为之前已经设置过eslint的格式化规则了,所以vue文件只需要格式化html和css中的代码,不需要格式化javascript代码,我们可以这样配置来禁止vetur格式化javascript代码:

vscode自动格式化代码(ESlint+stylelint+VSCode自动格式化代码)(5)

然后回到刚才的vue文件,随意打乱代码的格式,再按下shift+ alt+f,会发现html和css中的代码已经格式化了,但是javascript的代码并没格式化。没关系,因为已经设置了eslint格式化,所以只要保存,javascript的代码也会自动格式化。

同理,其他类型的文件也可以这样来设置格式化规范。

stylelint格式化css代码

下载依赖

npminstall--save-devstylelintstylelint-config-standard

在项目根目录下新建一个.stylelintrc.json文件并输入以下内容:

{"extends":"stylelint-config-standard"}

VSCode添加stylelint插件

vscode自动格式化代码(ESlint+stylelint+VSCode自动格式化代码)(6)

然后就可以看到效果了。

vscode自动格式化代码(ESlint+stylelint+VSCode自动格式化代码)(7)

如果你想修改插件的默认规则,可以看官方文档,它提供了170项规则修改。例如我想要用4个空格作为缩进,可以这样配置:

{"extends":"stylelint-config-standard","rules":{"indentation":4}}

发表评论:

最近发表
网站分类
标签列表