16

我正在使用 Dart Editor 构建一个 Dart 应用程序。我正在编译为 JavaScript 以在所有浏览器上运行。我想缩小输出 JavaScript。如何在不进入命令行的情况下做到这一点?

我知道在命令行上,我可以使用dart2js --minify app.dart. 如何从 Dart 编辑器自动执行此操作?

4

2 回答 2

13

从 Dart Editor 版本 0.7.5_r27776 开始,您可以在“启动配置”菜单中配置 dart2js 选项。

在 Mac 上,使用 Cmd-Shift-M 打开 Launch Config 选项。或者,选择绿色运行按钮旁边的下拉箭头,然后选择“管理启动”:

在此处输入图像描述

然后,为您的应用找到“以 javascript 方式运行”配置。它将有一个灰色的地球图标。

查找“编译器选项”并添加--minify

在此处输入图像描述

于 2013-09-25T23:57:07.230 回答
5

有两种快速简便的方法可以通过 Dart 编辑器缩小已编译的 Javascript 代码。推荐的方法是在您的 pubspec.yaml 文件中添加一个小内容。

这是一个例子:

  Name: my-app 
  description: An Angular web application 
  dependencies: 
    angular: any 
    browser: any 
  transformers: 
  - angular 

包括这个附加选项,你就完成了:

 Name: my-app 
  description: An Angular web application
  dependencies:
    angular: any
    browser: any
  transformers:
  - angular
  - $dart2js: 
    {'minify':true}

第二种方法是更改​​应用程序的启动选项并取消选择 VM 设置Run in checked mode。用一句话来说:Run > Managed Launches > Click on App Launch File > VM settings > Un-check "Run in checked mode"

我还没有尝试过最后一个选项,但是根据文档,它应该在“生产模式”下运行时自动缩小。

来源:https ://www.dartlang.org/tools/pub/dart2js-transformer.html

PS:$dart2js使用地图设置字段很重要,否则它将无法正确构建。这目前是一个错误或文档问题。

于 2014-04-24T00:21:04.227 回答