如何去掉prettier中的分号?

问题描述 投票:0回答:6

我正在使用 VS Code prettier 插件来格式化我的代码,如何添加设置以在格式化代码时不添加或删除分号?我知道这个功能是在一月份添加的,但我发现 PR 或问题中没有提及如何将其添加到设置中。

javascript reactjs ecmascript-6 prettier
6个回答
140
投票

来自自述文件

prettier.semi(默认:true)

是否在每行末尾添加分号(semi: true),或者仅在可能引入 ASI 失败的行开头添加分号(semi: false)

您必须将

prettier.semi
设置为
false

要更改更漂亮的设置请参阅

与所有其他 vscode 设置一样

注意:这些设置以 prettier 为前缀。


17
投票

打开

settings.json
文件*。

添加此行以在保存时格式化代码并在保存时删除分号:

    "editor.formatOnSave": true,

    "prettier.semi": false,




使用 Ctrl+P 在 Vs Code 中搜索文件。*


12
投票

在您的

Prettier
设置中。添加以下内容

semi: false
  • 如果您想使用 CLI 格式化文件,那么
prettier --write --no-semi your_file 

0
投票

如果您使用

.prettierrc.js
:

'use strict'

module.exports = {
  overrides: [
    {
      files: '*.{js,ts}',
      options: {
        semi: false,
      }
    }
  ]
}

0
投票

这个帖子中有很多相互矛盾的断言,所以让我尝试指出这些冲突,以及我认为如何解决它们:

到 2023 年,有数十种 VSCode 扩展可以通过调用“VS Code 更漂亮的插件”(根据 op.p.)来完成。让我们关注最流行/最常见的三种配置:

  1. Prettier 团队(最受欢迎)有官方的一个:它可以在保存时主动重新格式化您的代码,您需要在 VS Code 设置中启用和/或配置它。
  2. 有一个名为“Prettier ESLint”(第二受欢迎):它会在保存时主动重新格式化您的代码,不仅使用 Prettier 规则,而且据称还使用 ESLint 规则。 但是这个是 配置的 AFAIK,仅使用标准
    .prettierrc
    .eslintrc
    文件。
  3. 然后,人们可能没有意识到他们有一个隐含的问题:如果您的项目中安装了 eslint 和 prettier,然后安装 VSCode 的官方“ESLint”扩展,以及
    eslint-plugin-prettier
    和/或?
    eslint-config-prettier
    包,然后 VSCode 将使用 ESLint 插件自动突出显示违反 prettier 规则的情况,如您的
    .prettierrc
    中所定义。

因此,在 VSCode 中至少有三种主要方法可以让 Prettier“活跃”,具体取决于您是否:

  • 希望 Prettier 主动为您重新格式化代码在 VSCode 中,而不是仅仅标记/警告那里的规则违规行为
  • 也想根据 ESLint 规则添加主动重新格式化
  • 更喜欢使用
    .prettierrc
    或 VSCode
    settings.json
    配置 Prettier 规则。 (我自己更希望我的所有规则都在代码库中并且可以与队友完全共享,并且我不强迫他们都使用我喜欢的 IDE。)
  • 还想要/需要在 CI/CD 中、从 CLI 执行 Prettier,也许还可以使用 githooks(都是好主意,这意味着你也需要在
    .prettierrc
    中拥有你的规则)
  • 希望 VSCode 中的规则与其他环境中的规则略有不同

根据您对这四个问题的回答、您实际拥有哪些 VSCode 扩展以及您安装了哪些 JS 包,您可能需要在

.prettierrc
settings.json
中配置更漂亮的规则。

我相信预期/理想的默认行为是官方 Prettier 扩展实际上会遵循

.prettierrc
,并且您在 VSCode 中配置的特定规则只是本地覆盖。但是,根据我自己的经验,我无法让它发挥作用。 Prettier 扩展不断尝试添加分号,尽管
.prettierrc
明确表示不要这样做。一旦我禁用了该扩展,并让 ESLint 扩展接管,就没有问题了。 YMMV 对此(并在评论中分享您的经验教训)。只要注意多种可能性即可。


0
投票

去掉分号是大错误! 我强烈建议在 .prettier.json 配置文件中使用 semi: true ! 贾

© www.soinside.com 2019 - 2024. All rights reserved.