Visual Studio仅在JS/TS文件格式化时自动添加空行问题求助
解决Visual Studio中JS/TS文件自动添加空行的问题
大概率是Resharper的代码格式化规则在搞鬼——毕竟你说只有JS/TS文件出问题,还和添加大括号、粘贴这些操作绑定,而Ctrl+K,D没触发,很可能是即时格式化的规则和显式格式化的配置不一样。给你一步步排查解决:
先排查Resharper的设置
- 打开Resharper选项:点击顶部菜单栏的
Resharper,选择Options(或者直接按快捷键Alt+R, O) - 在左侧导航栏展开
Code Editing,选择JavaScript(TypeScript的话找对应选项,路径类似),然后点击Formatting Style下的Blank Lines - 这里会有一堆关于空行的规则,比如「代码块内语句之间添加空行」「函数内部的空行设置」等。你把所有自动添加空行的选项挨个检查,取消不需要的勾选——重点关注和"闭合大括号"、"粘贴"触发场景相关的规则。
- 另外,去
Code Editing > General Formatting > Formatting Trigger里看看,有没有勾选After typing a closing brace '}'或者On paste,如果有的话,先取消勾选再测试。
- 打开Resharper选项:点击顶部菜单栏的
检查VS自带的JS/TS编辑器设置
- 打开
Tools > Options,依次展开Text Editor > JavaScript/TypeScript > Formatting > Blank Lines - 这里的选项都是VS自带的空行插入规则,比如「对象字面量成员之间插入空行」「代码块开括号后插入空行」等,把你不需要的选项取消勾选。
- 打开
快速验证问题根源
暂时禁用Resharper:点击Resharper > Suspend,然后再做添加大括号、粘贴这些操作。如果空行不再自动添加,那肯定就是Resharper的设置问题,回去调整它的规则即可。
修改设置后记得点击Apply或OK保存,必要时重启Visual Studio,确保设置生效。
内容的提问来源于stack exchange,提问作者Chris
相关产品推荐
相关产品推荐

