【问题标题】:Too large JS-file generated生成的 JS 文件太大
【发布时间】:2013-12-05 20:30:29
【问题描述】:

我有这个代码:

// main.dart
import "package:angular/angular.dart";
main () => ngBootstrap();

我发dart2js --minify --out=main.dart.js main.dart

然后我有 main.dart.js,大小为 2.6 MiB(2,744,320 字节)。 这不正常。我做错了什么?

angular.dart 在这个阶段可以用于生产吗?

【问题讨论】:

标签: dart angular-dart dart2js


【解决方案1】:

更新(2014 年 1 月):AngularDart 0.9.5 现在包括一个标准的 MirrorsUsed 列表。要完成它并触发 Dart 的 tree-shaking 优化,你需要在你的程序中添加一个 MirrorsUsed

  • 列出您介绍的所有课程。
  • override: '*' 最终确定 MirrorsUsed。

既然 helloworld 没有新的类,比如说:

@MirrorsUsed(override: '*')
import 'dart:mirrors';

See Github for the complete helloworld program

关键是在你的 Dart 文件中包含一个 @MirrorsUsed 注释。 Pavel 的 AngularDart 教程链接是一个很好的资源。

要真正回答您的问题:是的,AngularDart 可用于生产,但请注意它现在处于“测试版”版本。我们预计会有许多重大的 API 更改!

【讨论】:

    【解决方案2】:

    看看关于部署的 angular.dart.tutorial 第 7 章。它有一个关于管理编译代码大小的部分:

    https://github.com/angular/angular.dart.tutorial/tree/master/Chapter_07

    【讨论】:

      【解决方案3】:

      @media-slave24

      也许这会对您有所帮助: https://code.google.com/p/dart/issues/detail?id=14686

      在飞镖错误跟踪系统上报告。一些使用镜子的人得到了 760kb。所以这绝对是一个错误。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-03
      • 1970-01-01
      • 1970-01-01
      • 2017-05-08
      • 2018-10-04
      • 1970-01-01
      • 2013-10-01
      • 1970-01-01
      相关资源
      最近更新 更多