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

Sci*_*ion 5 javascript internet-explorer angular

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

IE慢

知道什么可以延迟两次通话之间的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>
Run Code Online (Sandbox Code Playgroud)

roc*_*pus 2

多重想法:

  • 解决方法之一是减少 HTTP 调用。(将所有源代码连接到一个最小化的 JS 文件中)
  • 正如您所说,您的垫片也可能会采取行动,从而导致延迟。尝试使用 Modernizr 而不是多个垫片。

另请参阅:

YUI 最佳实践 - https://developer.yahoo.com/performance/rules.html

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