Internet Explorer(10,11)加载Angular 2应用程序非常慢

时间:2016-06-21 09:46:07

标签: javascript internet-explorer angular

我的应用程序完成得益于Angular 2,并且在所有浏览器上都能正常运行。但是,在IE上加载速度相当慢(10和11,我不支持下面)。例如,在Safari,Chrome和Firefox上加载需要约1.5秒,在IE上需要超过5秒(在Edge上需要10秒)。 我看了一下网络标签,发现有时它在两次通话之间有一个间隙(0.5到1秒):

IE Slowness

知道什么可以延迟两次通话之间的IE?

我唯一的领导可能是我的index.html中的垫片订购:

        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width">
        <title>AGA Front App</title>
        <script src='@routes.Assets.versioned("lib/angular2/es6/dev/src/testing/shims_for_IE.js")'></script>
        <script src='@routes.Assets.versioned("lib/es6-shim/es6-shim.min.js")'></script>
        <script src='@routes.Assets.versioned("lib/systemjs/dist/system.src.js")'></script>
        <script src='@routes.Assets.versioned("lib/typescript/lib/typescript.js")'></script>
        <script src='@routes.Assets.versioned("lib/angular2/bundles/angular2-polyfills.js")'></script>
        <script src='@routes.Assets.versioned("lib/rxjs/bundles/Rx.js")'></script>
        <script src='@routes.Assets.versioned("lib/angular2/bundles/angular2.js")'></script>
        <script src='@routes.Assets.versioned("lib/angular2/bundles/http.js")'></script>
        <script src='@routes.Assets.versioned("lib/angular2/bundles/router.dev.js")'></script>
        <script src='@routes.Assets.versioned("systemjs.config.js")'></script>
        <script>
            System.import(path + '/assets/app/bootstrap.ts')
                    .catch(console.error.bind(console));
        </script>

1 个答案:

答案 0 :(得分:2)

多重想法:

  • 一种方法是减少HTTP调用。 (连接所有 源代码合并为一个最小化的JS文件)
  • 正如你所说,你的垫片也可能会起作用,导致延迟。尝试 使用modernizr而不是多个垫片。

另请参阅:

YUI最佳做法 - https://developer.yahoo.com/performance/rules.html

通过Google效果规则运行您的应用: https://developers.google.com/web/fundamentals/performance/?hl=en