【发布时间】:2016-10-25 21:32:15
【问题描述】:
在较新的示例(seeds、angular.io、..)中,还有一个用于引导过程的导入:@angular/platform-browser-dynamic。
谁能解释一下,它和@angular/platform-browser有什么区别?
angular.io 官方网站上还没有任何信息。
【问题讨论】:
标签: browser import angular bootstrapping
在较新的示例(seeds、angular.io、..)中,还有一个用于引导过程的导入:@angular/platform-browser-dynamic。
谁能解释一下,它和@angular/platform-browser有什么区别?
angular.io 官方网站上还没有任何信息。
【问题讨论】:
标签: browser import angular bootstrapping
platform-browser-dynamic 和 platform-browser 之间的区别在于编译 Angular 应用程序的方式。
使用动态平台可以将即时编译器发送到前端以及您的应用程序。这意味着您的应用程序正在客户端编译。
另一方面,使用平台浏览器会导致您的应用程序的 Ahead-of-Time 预编译版本被发送到浏览器。这通常意味着发送到浏览器的包要小得多。
https://angular.io/docs/ts/latest/guide/ngmodule.html#!#bootstrap 上用于引导的 angular2 文档更详细地解释了它。
【讨论】:
platform-browser-dynamic,那么我就不需要包含platform-browser?
ng build 时,通过 CLI 设置 JIT 或 AOT 开关。事实上,在 Angular 9 中,AOT 默认是启用的。导入 platform-browser-dynamic 或 platform-browser 与 AOT/JIT 切换的上下文无关。
当使用离线模板编译器时,平台浏览器动态不再是必需的,因为所有反射访问和元数据都被转换为生成的代码。
如果您仍想动态生成像https://stackoverflow.com/a/36017067/217408 中所示的组件,那么您需要动态的东西。
【讨论】:
如果您仔细查看 angular2 的历史,您会发现有两个版本 1) beta 版本 2) 发布候选版本。目前是 r.c 3(候选版本 3)。发布候选版本是指最终版本之前的错误修复版本。因此,当 angular2 从 beta 版本移动到第一个候选版本(rc1)时,它会进行一些目录更改......例如
angular2/core---->@angular/core
angular2/platform/browser------>@angular/platform-browser-dynamic
更多信息请访问
https://github.com/angular/angular/blob/master/CHANGELOG.md
我希望你能找到答案。谢谢
【讨论】: