基于自定义需求的 WebStorm 2016 自动格式化代码

Posted

技术标签:

【中文标题】基于自定义需求的 WebStorm 2016 自动格式化代码【英文标题】:WebStorm 2016 auto format code based on custom requirements 【发布时间】:2018-06-07 11:52:48 【问题描述】:

我正在尝试自动格式化我的代码以通过 JSLint 违规。我知道我可以按 Ctrl + Alt + L,但这并不能按照我想要的方式格式化代码。

例如,JSLint 抱怨并非所有变量都定义在函数之上。我希望我的代码格式化程序将这些变量移动到函数的顶部(或者让 linter 不抱怨会更好)。另一个例子是 linter 抱怨未使用的变量。在这种情况下,我希望格式化程序删除未使用的变量。当然,间距问题也应该像默认格式化程序一样得到修复。

如果这在 WebStorm 中是不可能的,我可以编辑一个 JSLint 配置文件来关闭一些警告(比如在函数顶部定义所有变量)。

我正在使用grunt-jslint

【问题讨论】:

【参考方案1】:

不幸的是,WebStorm 不支持从 JSLint (WEB-2227) 导入代码样式首选项。它都不支持自动修复 JSlint 错误。大多数 JSLint 规则都是硬编码的,因此无法禁用(请参阅http://www.jslint.com/help.html 了解可用选项;它们可以直接在您的 Gruntfile 中设置 - 请参阅 http://derpturkey.com/jslint-with-grunt/)

我会说 JSLint 有点过时了,不太可能会在 WebStorm 中添加对它的更多支持。尝试改用 ESLint - 它更加灵活,并且深度集成在 webstorm 中 - https://blog.jetbrains.com/webstorm/2017/06/webstorm-2017-2-eap-172-3198/、https://blog.jetbrains.com/webstorm/2016/09/webstorm-2016-3-eap-163-3983/。它可以设置为 Grunt 构建过程的一部分 - https://www.npmjs.com/package/grunt-eslint

【讨论】:

感谢您的回复!不幸的是,由于这与工作有关,我无法切换到 ESLint。我会尝试弄乱 Gruntfile 中的选项。

以上是关于基于自定义需求的 WebStorm 2016 自动格式化代码的主要内容,如果未能解决你的问题,请参考以下文章

angular 2 种子,webstorm 2016.1 突然停止导入库

webstorm 自定义模板块

webstorm 自定义模板块

Vue3-JavaScript如何使用vue3创建一个基于webstorm开发自动提示和自动格式化代码规则的工程!

更新 WebStorm 2016 中的当前缩进空间大小

webstorm/vscode~eslint配置