【发布时间】:2018-05-11 19:13:06
【问题描述】:
我有一个与 Webpack 捆绑在一起的应用程序。我描述的问题发生在 Webpack 3 和 Webpack 4 上。我升级到 4 希望它能解决它,但它没有。
运行“au build”时,生成的应用程序在 IE 中运行速度很快(不如其他浏览器快,但仍然可用)。运行“au build --env prod”时,生成的应用程序需要一分钟才能加载。
我开始删除功能,直到我只剩下一个空白屏幕并且它仍然遇到问题。我对 webpack.config 选项进行了硬编码,直到我生成了两个完全相同的应用程序,除了一个在包中嵌入了地图,另一个没有。嵌入 bundle 的应用在 IE11 中运行速度很快,而没有嵌入 bundle 的应用运行缓慢。
我可以通过使用 typescript、sass 和 Webpack 使用 cli 简单地构建一个新项目来重现这一点。你最终得到了标准的 Hello World aurelia 应用程序。 “au build” 然后在 IE11 中运行。 “正在加载...”状态显示大约一秒钟。然后,“au build --env prod”并在 IE 中运行。在“Hello World”出现之前,“正在加载...”状态会显示 6 - 10 秒。
唯一重要的区别是 js 映射是否存在于包中。它在那里运行得更快。
关于为什么以及如何解决这个问题的任何想法?
【问题讨论】:
-
这个问题的答案是不要使用 bluebird promise polyfill。我切换到 es6-promise 并且 IE 现在非常快。好吧,我们都知道这是夸大其词,但它的反应是可以接受的。
-
你应该用你的发现回答你自己的问题,它可能会帮助其他读者:)