首页 > 解决方案 > 通过自动格式化将 Dart/Flutter 函数链接到新行

问题描述

Dart 中的自动格式化使我的代码变得一团糟,例如:

final list = Stream.fromIterable([1, 2, 3]);
list
  .map((a) => a * 2)
  .map((b) => b * 3)
  .reduce((a, b) => a + b);

变成这样:

final list = Stream.fromIterable([1, 2, 3]);
list.map((a) => a * 2).map((b) => b * 3).reduce((a, b) => a + b);

有没有办法在我使用点字符链接函数的地方自动格式化期间保留换行符?通过自动格式化,我的意思是在 Android Studio 中按 CTRL+ALT+L。

标签: flutterdart

解决方案


这有点 hacky,但您可以使用注释(甚至是空的)来保留换行符:

void main() {
  final list = Stream.fromIterable([1, 2, 3]);
  list //
      .map((a) => a * 2)
      .map((b) => b * 3)
      .reduce((a, b) => a + b);
}

推荐阅读