You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

VS Code中如何配置Prettier保留函数开头的空格

解决Prettier删除函数开头空格的问题

嘿,我之前也碰到过这个糟心的情况!别担心,咱们通过调整Prettier的配置就能轻松搞定,下面是具体步骤:

1. 直接配置Prettier的space-before-function-paren规则

这是控制函数名与括号之间空格的核心配置项,你有两种方式设置:

方式一:在VS Code设置里调整

  • 打开VS Code的设置界面(快捷键Ctrl+,或者Cmd+,
  • 在搜索框输入prettier space before function paren
  • 在出现的选项里,选择符合你需求的规则:
    • Always:所有函数(命名、匿名、箭头函数等)前都保留空格
    • Never:所有函数前都不保留空格
    • Named:仅命名函数前保留空格(比如function foo () {}
    • Anonymous:仅匿名函数前保留空格(比如function () {}
    • Async Arrow:仅异步箭头函数前保留空格(比如async () => {}

方式二:用项目本地配置文件(更推荐,保证团队一致性)

在项目根目录创建.prettierrc(或者.prettierrc.json)文件,写入对应规则,比如你想要所有函数前都保留空格,就写:

{
  "space-before-function-paren": "always"
}

如果只需要命名函数保留空格,就改成:

{
  "space-before-function-paren": "named"
}

2. 检查是否有其他工具冲突

如果设置后还是没效果,可能是和ESLint这类工具的规则冲突了:

  • 检查ESLint的space-before-function-paren规则,确保它和Prettier的配置一致
  • 如果你同时用ESLint和Prettier,建议安装eslint-config-prettier,它会自动禁用所有和Prettier冲突的ESLint规则,避免格式打架

3. 验证配置是否生效

修改配置后,记得:

  • 保存配置文件
  • 重启VS Code或者通过Ctrl+Shift+P(Windows/Linux)/Cmd+Shift+P(Mac)选择Reload Window重新加载窗口
  • 打开你的测试文件,保存后看看函数开头的空格是否被保留了

要是还是有问题,可以检查项目里的.editorconfig文件,有些团队会用这个文件定义基础格式规则,可能会影响Prettier的行为哦。

内容的提问来源于stack exchange,提问作者user1503606

火山引擎 最新活动