不应该的 VSCode 格式(更漂亮,javascript)

Posted

技术标签:

【中文标题】不应该的 VSCode 格式(更漂亮,javascript)【英文标题】:VSCode formatting when it shouldn't be (prettier, javascript) 【发布时间】:2021-08-14 23:46:10 【问题描述】:

我已经解决了 ESLint 和 Prettier 之间的几乎所有冲突。然而,我最近遇到了一个让我很困惑的问题。

const data = await userManager
    .getUsers()
    .orderBy('joinedDate', 'desc')
    .limit(20)
    .get();

我非常喜欢上面的这种格式,prettier 似乎也是如此。

问题:保存文件时,它被格式化回:

const data = await userManager.getUsers().orderBy('joinedDate', 'desc').limit(20).get();

我感到困惑的是,prettier 是我保存在 javascript 的 vscode 中的格式化程序。

"editor.defaultFormatter": null,
"[javascript]": 
    "editor.defaultFormatter": "esbenp.prettier-vscode"
,

但是,当它全部在一行时,我得到的 Linting 错误是...prettier 说有一个错误。

所以,它是:

说有错误更漂亮。 我使用 prettier “快速修复”它回到多行修复 但是当我“保存”文档时,它会通过使用格式化程序返回到一行 - 更漂亮?

告诉我与其他正在运行/格式化的东西存在冲突的原因是,我在格式化程序实际将其正确放回(prettier?)之间的保存时收到“闪存”,但随后它被第二次格式化回单长线。

但是,我只有 1 个格式化程序?

【问题讨论】:

【参考方案1】:

经过一些挖掘和试验,这似乎是设置组合以使其能够与prettier 和 es6 linter 一起正常工作。

// vscode's settings.json
//
    "editor.formatOnSave": false,
    "editor.defaultFormatter": null,
    "[javascript]": 
        "editor.defaultFormatter": "esbenp.prettier-vscode"
    ,
    "editor.codeActionsOnSave": 
        "source.fixAll": true
    ,

【讨论】:

以上是关于不应该的 VSCode 格式(更漂亮,javascript)的主要内容,如果未能解决你的问题,请参考以下文章

保存时更漂亮的 VSCODE 重新格式化已停止工作

如何在 vscode 中禁用更漂亮的错误突出显示

使用 VSCode 更漂亮的 react/jsx-max-props-per-line 格式

使用 VsCode 更漂亮

如何在 vscode 上为 css 模块设置更漂亮

VS Code 自动格式化更漂亮