跳过主内容

dart format

要将您的代码更新为遵循 Dart 格式化指南,请使用 dart format 命令。此格式化与您使用支持 Dart 的 IDE 或编辑器时获得的效果一致。

指定要格式化的文件

#

要重新格式化一个或多个 Dart 文件,请提供所需文件或目录的路径列表。

指定单个路径

#

提供单个文件或目录的路径。如果您传递目录路径,dart format 也会递归进入其子目录。

示例:格式化当前目录或其下的所有 Dart 文件

dart format .

指定多个路径

#

要指定多个文件或目录,请使用空格分隔的列表。

示例:格式化 lib 目录下的所有 Dart 文件,以及 bin 目录下的一个 Dart 文件

dart format lib bin/updater.dart

防止覆盖 Dart 文件

#

默认情况下,dart format覆盖 Dart 文件。

  • 要不覆盖文件,请添加 --output-o 标志。
  • 要获取格式化文件的内容,请添加 -o show-o json
  • 要只查看哪些文件更改,请添加 -o none
dart format -o show bin/my_app.dart

当发生更改时通知

#

要使 dart format 在发生格式化更改时返回退出代码,请添加 --set-exit-if-changed 标志。

  • 如果发生更改,dart format 命令将返回退出代码 1
  • 如果没有发生更改,dart format 命令将返回退出代码 0

在持续集成 (CI) 系统中使用退出代码,以便它们可以根据退出代码触发其他操作。

dart format -o none --set-exit-if-changed bin/my_app.dart

哪些会更改?

#

dart format 进行以下格式化更改:

  • 移除空白。
  • 将每行包裹成 80 个字符或更短。
  • 为任何跨多行分割的参数或形参列表添加尾随逗号,并从不跨多行的列表中移除它们。
  • 可能会将注释移到逗号之前或之后。

要了解编写和美化 Dart 代码的最佳实践,请查阅Dart 样式指南

配置格式化程序的页面宽度

#

当您运行 dart format 时,格式化程序默认将行长度设置为 80 个字符或更短。如果您想为您的项目配置行长度,可以在 analysis_options.yaml 文件中添加一个顶层 formatter 部分,如下所示:

analysis_options.yaml
yaml
formatter:
  page_width: 123

由于分析选项文件通常位于根目录,因此配置的行长度将适用于包中的所有内容。

您还可以通过在文件顶部、任何其他代码之前添加标记注释来配置单个文件的行长度,这会覆盖分析选项文件:

dart
// dart format width=123

了解更多

#

要了解其他命令行选项,请使用 dart help 命令或参阅 dart_style 包的文档。

dart help format

请查阅格式化程序常见问题解答,了解格式化决策背后的更多背景信息。