繁体   English   中英

如何防止 Visual Studio Code 将链式函数推送到新行?

[英]How to prevent Visual Studio Code from pushing chained functions on to new line?

如何防止 Visual Studio Code 将链接的 JavaScript 函数推送到新行,如下面的 GIF 所示:

如您所见,它使代码极难查看,并将简单的if签入扩展到多行。 我正在使用名为Prettier - Code Formatter的扩展程序,我查看了首选项并发现以下内容:

// Format a file on save. A formatter must be available, the file must not be 
//auto-saved, and editor must not be shutting down.
"editor.formatOnSave": false

当您点击保存时,它会完全停止格式化。 我查看了其他选项,但找不到此设置。

上面的过程有名字吗?

如何保留formatOnSave但防止它按原样格式化?

似乎这是不可配置的(不确定是否会配置),这是此问题中 Github 帖子的直接副本:

此功能的建议行为是:

  • 达到行长限制后换行
  • 在 3 个链式方法之后换行
  • 在可配置数量的链式方法之后包装
  • 当满足两个条件之一时换行:
    • 已达到行长限制
    • 用户通过手动插入换行符来选择加入它,比如对象文字

最初的实现是(1)。

当前的实现是(2)。

(3) 不太可能发生,因为 prettier 试图避免配置。

由于希望最小化用户输入对 prettier 输出的影响,因此共识反对 (4)。

我认为当前的实现 (2) 在大多数情况下是有意义的,但我发现自己经常需要 (4) 以至于我不再使用 prettier for JS。

基于此,目前没有办法修改这种行为,也没有任何计划(截至撰写本文时)。

绝对不是我想要的答案,但它就是给出的答案。

由于它作为一项功能在他们的GitHub 上,因此没有选项可以从配置中更改它是有道理的。 一种方法可以实现你想要的,只要你添加// prettier-ignore

在此处输入图像描述

不要/不使用更漂亮的,尝试美化+ ESlint

这是一个严肃的答案,因为我试图解决它很长时间。 但它真的无法修复。

VSCode 实际上并没有使用 prettier,它很可能作为您的扩展之一溜走,或者作为 eslint 或提示设置启用。 如果这发生在我身上。 在终端中试试这个:“code --disable-extensions”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM