目录

webdev

此页面解释如何使用 webdev 编译你的应用,以及如何使用 build_runner 测试你的应用。

设置

#

按照以下说明开始使用 webdev

在使用 webdev 之前,请将 build_runnerbuild_web_compilers 包的依赖项添加到你的应用中。build_runner 包为 webdev 添加了脚本功能。

$ dart pub add build_runner build_web_compilers --dev

安装和更新 webdev

#

使用 dart pub所有用户安装 webdev

$ dart pub global activate webdev

使用相同的命令更新 webdev。当你更新 Dart SDK 或当 webdev 命令以你无法解释的方式失败时,更新 webdev

依赖 build_* 包

#

要使用 webdev,你必须位于依赖于 build_runnerbuild_web_compilers 包的包的根目录中。如果你要测试应用,它还必须依赖于 build_test

要依赖这些包,请将以下 dev_dependencies 添加到你的应用的 pubspec.yaml 文件中

yaml
  dev_dependencies:
    # ···
    build_runner: ^2.4.13
    build_test: ^2.2.2
    build_web_compilers: ^4.0.11

像往常一样,在 pubspec.yaml 更改后,运行 dart pub getdart pub upgrade

$ dart pub get

使用 Dart 包中的命令进行编译和测试

#

此工具可以通过两种方式进行编译:一种使调试更容易 (serve),另一种生成小型、快速的代码 (build)。

开发编译器支持增量更新,并生成 异步模块定义 (AMD) 模块。 使用 webdev serve,你可以编辑你的 Dart 文件,在 Chrome 中刷新,并在短时间内看到你的编辑。 这种速度来自于编译更新的模块,而不是你的应用需要的所有包。

第一次编译需要的时间最长,因为它会编译整个应用。当 serve 命令运行时,后续的构建应该会更快地编译。

生产编译器生成一个单独的、经过缩小的 JavaScript 文件。

本节介绍如何使用以下命令

webdev serve
运行持续构建 JavaScript 应用的开发服务器。
webdev build
构建 JavaScript 应用的可部署版本。
build_runner test
运行测试。

你可以使用构建配置文件自定义构建。要了解有关构建配置文件的更多信息,请参阅 build_web_compilers 包。

webdev serve

#

要服务你的 Web 应用的开发版本,请运行以下命令。

$ webdev serve [--debug | --release] [ [<directory>[:<port>]] ... ]

此命令启动一个开发服务器,该服务器服务你的应用并监视源代码更改。默认情况下,此命令在 localhost:8080 上服务应用

$ webdev serve

第一次 webdev serve 编译速度较慢。第一次编译后,它会将资产缓存在磁盘上。这使得以后的构建编译速度更快。

要启用 Dart DevTools,请添加 --debug 标志

$ webdev serve --debug  # enables Dart DevTools

要使用生产编译器而不是开发编译器,请添加 --release 标志

$ webdev serve --release  # uses production compiler

你可以指定不同的目录-端口配置。

例如,以下命令将测试端口从默认值 (8081) 更改为 8083

$ webdev serve web test:8083 # App: 8080; tests: 8083

webdev build

#

使用以下命令构建你的应用

$ webdev build [--no-release] --output [<dirname>:]<dirname>

默认情况下,build 命令使用生产 JavaScript 编译器来创建应用的生产版本。添加 --no-release 以使用开发 JavaScript 编译器进行编译。使用 --output 选项来控制 Dart 编译顶级项目文件夹并写入其输出的位置。

以下命令显示如何将项目的顶级 web 文件夹编译到 build 目录中。默认情况下,此命令使用生产 JavaScript 编译器。

$ webdev build --output web:build

build_runner test

#

使用 build_runner test 命令运行你的应用的组件测试

$ dart run build_runner test [build_runner options] -- -p <platform> [test options]

例如,以下是如何运行所有 Chrome 平台测试

$ dart run build_runner test -- -p chrome

要查看所有可用的 build_runner 选项,请使用 --help-h 选项

$ dart run build_runner test -h

Dart 将空 -- 参数后的参数直接传递给 test 包 运行器。要查看测试包运行器的所有命令行选项,请使用此命令

$ dart test -h

更多信息

#

有关 webdev 选项的完整列表,请运行 webdev --help 或参阅 webdev 包

另请参阅以下页面