我在使用dart2js构建时已经使用了minify
参数。Dart - dart2js和进一步的尺寸优化
我看着输出,我看到import 'dart:html
导致输出文件大小(2kb.dart文件变成182kb .js文件)方面的问题。例如,它会导入SVG
包,但在我的代码中,我从不碰任何<svg>
DOM元素。
我知道编译器不知道我是否要使用svg
DOM元素。我知道使用var
是这种行为的原因之一。
但是,如果我不使用任何var
关键字,编译器仍然没有足够的“电源”去除所有未使用的包和功能。
是否有任何指令可以用来禁止导入某些软件包。我的意思是现在内置的软件包。我正在使用IntelliJ IDEA,它不允许我在Dart默认设置中更改任何内容。
UPD:尽量选用
import 'dart:html' show querySelector, Element
只导入方法和类,但文件大小仍是182KB。
我现在看到的唯一解决方案是制作默认的'dart:html'包的几个剥离版本。没有WebGL,SVG和一些其他功能的人。
因为也许Dart编译器工作良好,但只有一些方法和类,我不使用,但代码使用。像...初始包方法检查是否有一些元素是SVG或类似的东西。
对于其他的目的,我有一个最小的工作'镖:用'querySelector'建筑html'项目'release'的大小得到了'37kb - main.dart.js'。领先一步可能会影响最小的项目。 –