javascript - 使用 Prettier JS 时保留 then() catch() 格式

标签 javascript formatting format visual-studio-code prettier

我刚开始使用 PrettierJS VSCode 插件,我正在寻找一种方法来保留我的服务调用(以及后续 Promises)的代码格式。

我知道您可以在代码块之前添加 //prettier-ignore 注释以保留代码模式,但由于我在整个应用程序中都这样做,所以我不想添加它到处都是评论线。

现在,我的代码块如下所示:

       return this.thingService.addThing(newThing)
            .then(wonFunction)
            .catch(lostFunction);

但是当我执行 Prettier 格式命令时,我得到了这个:

    return this.accessData.addRight(newRight).then(wonAddAccessRight).catch(lostAddAccessRight);

我想要一种方法来防止我的代码块在不使用 //prettier-ignore 注释的情况下发生更改。

最佳答案

Prettier 现在自动在单独的行中断开 3 个或更多函数的链(我写的当前版本是 1.9.1),因此格式与 OP 要求的有点不同:

return this.accessData
  .addRight(newRight)
  .then(wonAddAccessRight)
  .catch(lostAddAccessRight);

但是如果你想在只有 2 个函数的情况下强制它中断,有一个 hack 就是添加注释,Prettier 会自动中断它:

return promise // force break
  .then(didResolve)
  .catch(didReject);

关于javascript - 使用 Prettier JS 时保留 then() catch() 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45173090/

相关文章:

javascript - Unicode 三 Angular 自旋

javascript - 如何修复 "Lexical declaration cannot appear in a single-statement context"

javascript - IE JS : how to use pasteHTML() when selection. 类型 == 'None' ?

format - gfortran - 实际输出是否允许未指定的十进制长度?

css - font-face src 中格式的可能值是什么?

c# - 为货币格式化文本框字符串

javascript - 带有 jQ​​uery ui 主题的自动样式复选框

javascript - CSS 和 Javascript 的格式问题

java - 在 HTML 中格式化 java 代码以像在 IDE 中一样显示它

c# - 是否可以格式化工具提示文本(粗体、下划线...等)?