编译的AngularDart是否会污染全局范围或覆盖浏览器的标准对象?

时间:2018-02-04 06:50:17

标签: dart angular-dart dart2js

我正在寻找一个允许我编写SPA和嵌入式库的框架。我希望有办法在两者之间共享组件。所以我正在寻找一种与其他框架相比具有相对少量潜在冲突的解决方案,并且我正在寻找与AngularDart相关的解决方案。包括使用脚本选项卡包含库的情况,是同一页面上两个版本的AngularDart。一个框架,它具有较少的全局对象,没有标准对象覆盖,没有全局事件处理和有限的polyfill冲突。

Dart和AngularDart接缝我需要的东西,但我还需要更多细节和文档来验证我的假设。您能够指出的任何内容都会非常有用并且非常感谢(问题,公关,博客,路线图,提交,规范,文档)

可以在同一页面上运行多个AngularDart应用程序。我已经测试了嵌入在其中的AngularDart todo示例应用程序。但是我需要更多关于dart2js正在做什么以及编译器如何避免全局范围污染的细节。

1 个答案:

答案 0 :(得分:0)

是的,AngularDart应该非常适合您的要求。

Dart本身不应该污染你的范围,你可以尝试在一些微不足道的东西上运行dart2js(比如只在main中打印)并验证代码 - 它创建一个闭包并执行它,因此从外面无法访问任何内部。任何全局JS对象都没有修补,因此您可以将其与任何内容一起运行而不会受到干扰。如果不是这种情况则提出错误。

您可以根据需要在单个页面上运行任意数量的AngularDart应用程序。为了使它们完全隔离,您可以使用dart2js单独编译它们,然后它们将无法访问任何相互内部的任何内容。