Angular 2 初始化慢
Angular 2 is slow to initialize
有人能帮帮我吗?
我的 Angular 2 应用程序需要很长时间才能初始化。
只有 16 个请求。
尽管 3 mb 的大小相对较高,但问题是没有带文件。
我指的是获取所有文件后的时间。
在我的笔记本上是 3 到 4 秒,我认为这是一个很好的时间,因为我现在只有 10 个组件、1 个管道和 6 个指令。
这个想法是应用程序有近 200 个组件。
然后我会创建延迟加载。
但是对于 10 个组件我认为它应该更快。
phone小区待机时间达到10、12秒。
在 iPad 上,等待时间也比较长。
超过 15 秒。
我正在使用 webpack,压缩 css 和 js。
即使在服务器上使用预渲染(asp.net 核心)。
此延迟发生在所有文件下载完成后。
也就是说,渲染屏幕需要 angular 2 个处理时间。
我还能做什么?
我做错了什么?
测试link:
http://projetos.codegenerator.com.br/angular2/
谢谢。
Angular 2 的性能经过了很好的测试,如果在应用程序及其依赖项上有任何滞后..
检查你的环境,如果只有几个组件那么框架方面没有问题。
Webpack 或任何其他构建工具与性能无关,因为它们是开发依赖项,
如果您使用 cdn 用于某些第三方服务或图书馆,请检查他们的服务是否准时。
我终于在应用程序中获得了我想要的性能。
这需要一些工作,但确实值得。
将您的应用程序配置为在 AOT 中编译,性能提升确实值得。
我认为您没有使用任何捆绑工具,例如 webpack、systemjs..
当你部署你的ng2-app时,你应该使用AOT(提前)编译。
我猜你正在使用 JIT(及时)编译。
在angular2指南页面,
With AOT, the browser downloads a pre-compiled version of the application. The browser loads executable code so it can render the application immediately, without waiting to compile the app first.
当你使用JIT编译时,你的浏览器会下载由angular2编译器定义的vendor.js,它会及时编译你的应用程序。它会太慢,您的客户必须下载供应商文件。当您使用 AOT 时,您不必使用供应商文件,因此资源更小。
我建议您在部署应用时使用 AOT 编译,并针对资源大小使用延迟加载。
如果您对 ng2 AOT 编译感兴趣,请阅读本指南。
这里是带有 webpack2 和延迟加载的 angular2 应用示例。
在这里使用文件结构和配置文件。
当我使用示例应用程序进行测试时,与 aot 捆绑在一起的文件小于 500KB。
有人能帮帮我吗?
我的 Angular 2 应用程序需要很长时间才能初始化。
只有 16 个请求。 尽管 3 mb 的大小相对较高,但问题是没有带文件。
我指的是获取所有文件后的时间。
在我的笔记本上是 3 到 4 秒,我认为这是一个很好的时间,因为我现在只有 10 个组件、1 个管道和 6 个指令。
这个想法是应用程序有近 200 个组件。 然后我会创建延迟加载。
但是对于 10 个组件我认为它应该更快。 phone小区待机时间达到10、12秒。 在 iPad 上,等待时间也比较长。 超过 15 秒。
我正在使用 webpack,压缩 css 和 js。 即使在服务器上使用预渲染(asp.net 核心)。
此延迟发生在所有文件下载完成后。 也就是说,渲染屏幕需要 angular 2 个处理时间。
我还能做什么? 我做错了什么?
测试link: http://projetos.codegenerator.com.br/angular2/
谢谢。
Angular 2 的性能经过了很好的测试,如果在应用程序及其依赖项上有任何滞后..
检查你的环境,如果只有几个组件那么框架方面没有问题。
Webpack 或任何其他构建工具与性能无关,因为它们是开发依赖项,
如果您使用 cdn 用于某些第三方服务或图书馆,请检查他们的服务是否准时。
我终于在应用程序中获得了我想要的性能。 这需要一些工作,但确实值得。
将您的应用程序配置为在 AOT 中编译,性能提升确实值得。
我认为您没有使用任何捆绑工具,例如 webpack、systemjs..
当你部署你的ng2-app时,你应该使用AOT(提前)编译。 我猜你正在使用 JIT(及时)编译。
在angular2指南页面,
With AOT, the browser downloads a pre-compiled version of the application. The browser loads executable code so it can render the application immediately, without waiting to compile the app first.
当你使用JIT编译时,你的浏览器会下载由angular2编译器定义的vendor.js,它会及时编译你的应用程序。它会太慢,您的客户必须下载供应商文件。当您使用 AOT 时,您不必使用供应商文件,因此资源更小。
我建议您在部署应用时使用 AOT 编译,并针对资源大小使用延迟加载。
如果您对 ng2 AOT 编译感兴趣,请阅读本指南。
这里是带有 webpack2 和延迟加载的 angular2 应用示例。
在这里使用文件结构和配置文件。
当我使用示例应用程序进行测试时,与 aot 捆绑在一起的文件小于 500KB。