转换后的Dart应用程序是否需要是一个文件?

时间:2015-03-06 02:24:16

标签: dart angular-dart dart-pub

让我们说我正在创建一个应用程序,我需要定期向客户端推送更新。现在,大多数这些更新只会影响我自己的代码,而不会影响构成我的依赖的库。据我所知,我在调用pub build时使用的变换器将获取我的所有库,依赖项和其他任何内容,并将它们一起编译在一个web/main.dart.js文件中。这往往会让我想起 静态链接 ,就像C ++这样的语言一样。

出于显而易见的原因,在最终部署应用程序时,您只想进行这样的编译。对于大多数人来说,只需使用dartium就可以直接使用.dart层次结构。但是,如果我在javascript浏览器中测试,例如尝试dart:js代码,该怎么办?当他们完全不受影响时,我不想重新编译所有角色和朋友。我的具体情况是希望在我的应用程序中使用CDN服务的静态文件。

AngularDart,作为我的例子,为我编译的javascript贡献了大量 22,000行,如果我在自己的应用程序中改变一个小东西,我可以亲吻304 NOT MODIFIED再见,更不用说了CDN节省了大量未受影响的角度。

所有这一切,是否有办法在转型飞镖应用程序中解除依赖关系? 可以“动态链接”我的dart库吗?此外,我可以假设将我的dart库分发为dart.js,以便在其他转换代码中使用吗?

1 个答案:

答案 0 :(得分:2)

不,它不会这样。如果deployable包含整个依赖项,则可能会有效,但情况并非如此 pub build只包含你的app中实际使用的代码(树摇动),这通常只是依赖的一小部分。更改代码中的单个字符可能需要包含来自依赖项的不同代码。我认为树木化的效果要比缓存更大。