我喜欢 VSCode 中的自动组织功能,但让它在每次保存时都执行此操作给我带来了一些麻烦。
...
"editor.codeActionsOnSave": {
"source.organizeImports": true
},
...
当我暂存导入时,是否可以设置一些 git hook 来组织导入(通过 vscode 或其他脚本/lib)?
Issues
如果我在使用导入的方法之前太早点击保存(这样做是为了始终更漂亮),那么它会删除它,我必须再次编写导入。
如果我破坏代码 (.jsx) 并且某些内容似乎未使用并且我点击保存(以触发更漂亮),那么它会删除导入。然后我必须再次导入它们。
运行时可以应用某种形式的钩子git add
:过滤器定义在gitconfig
and .gitattributes
.
See git 书的这一部分 https://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes#_keyword_expansion详细解释。
以下是文档中的草图(它说明了如何配置过滤器以在其上运行)*.txt
文件):
您可以在您的gitconfig
一个过滤器,由“clean”和“smudge”两个命令组成:
$ git config --global filter.jsximports.clean fiximports
$ git config --global filter.jsximports.smudge cat
并编辑.gitattributes
文件以在 jsx 文件上应用此过滤器
*.jsx filter=jsximports
要应用的脚本可能是tslint --fix
,与ordered-imports rule https://palantir.github.io/tslint/rules/ordered-imports/.
实际上 :tslint
的规则似乎有自己的实现,但它做了类似的事情(参见https://github.com/palantir/tslint/pull/4064 https://github.com/palantir/tslint/pull/4064)
在这个答案中:https://stackoverflow.com/a/57458656/86072 https://stackoverflow.com/a/57458656/86072
用户 thorn 指向这个 npm 包:
https://www.npmjs.com/package/organize-imports-cli https://www.npmjs.com/package/organize-imports-cli
从 cli 调用organizeImports
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)