Angular2 加载时文件请求过多

2023-12-10

我正在制作一个网站Angular2我遇到了我认为的问题。在我的角度页面第一次加载时,SystemJS正在发出超过 50000 个请求来检索每个Angular2文件输入angular2/src目录。总共,第一次加载下载超过 4MB,启动时间超过 14 秒。

My index.html以下脚本是否包括:

<script src="libs/angular2/bundles/angular2-polyfills.js"></script>
<script src="libs/systemjs/dist/system.src.js"></script>
<script src="libs/rxjs/bundles/Rx.js"></script>
<script src="libs/angular2/bundles/angular2.min.js"></script>
<script src="libs/angular2/bundles/http.dev.js"></script>
<script src="libs/jquery/jquery.js"></script>
<script src="libs/lodash/lodash.js"></script>
<script src="libs/bootstrap/js/bootstrap.js"></script>

我的 systemJs 初始化代码如下所示:

    <script>
      System.config({
        defaultJSExtensions: true,
        paths: {
          '*': 'libs/*',
          'app/*': 'app/*'
        },
        packageConfigPaths: ['libs/*/package.json'],
        packages: {
          app: {
            format: 'register',
            defaultExtension: 'js'
          }
        }
      });
      System.import('app/main')
            .then(null, console.error.bind(console));

    </script>

我的公用文件夹具有以下结构:

.
├── img
├── styles
├── app
├── libs
|   └── angular2
|   └── systemjs
|   └── rxjs
|   └── jquery
|   └── lodash
|   └── bootstrap
└── index.html

A couple of screenshots of some of the js files that are being requested: enter image description here

enter image description here

有没有办法避免所有这些请求?


我遇到了完全相同的问题,实际上正在查看这篇文章以寻求答案。这是我为解决问题所做的事情。

  1. 修改您的项目以使用 webpack。请遵循这个简短的教程:Angular2 快速入门 SystemJS 到 Webpack
  2. 此方法将为您提供一个 javascript 文件,但它非常大(我的项目文件超过 5MB)并且需要缩小。为此,我全局安装了 webpack:npm install webpack -g。安装后,运行webpack -p从您的应用程序根目录。这使我的文件大小减少到大约 700KB

从 20 秒和 350 个请求减少到 3 秒和 7 个请求。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular2 加载时文件请求过多 的相关文章

随机推荐

  • x64 Linux 中单进程最大可能内存

    x64 Linux 中单个进程有内存限制吗 我们正在运行一个具有 32Gb RAM 的 Linux 服务器 我想知道是否可以将大部分 RAM 分配给我正在编码的单个进程 该进程需要大量 RAM 某些内核有不同的限制 但在任何现代 64 位
  • 谷歌应用程序引擎请求日志细分

    以下是管理控制台日志部分中的一个 python appengine 应用程序的示例行 已过滤为 仅请求 01 22 07 19PM 55 483 zone 5 200 82ms 161cpu ms 115api cpu ms 0kb Moz
  • 如何快速计算数组中的特定项目

    假设我有下面任何对象的数组 我正在寻找一种方法来计算数组中的项目 如下所示 var OSes iOS Android Android Android Windows Phone 25 有没有一种快捷方式可以让 swift 做下面这样的事情
  • 关闭视图控制器而不停止异步任务

    我使用以下代码从新启动的视图控制器执行一些复杂的后台操作 let globalQueue DispatchQueue global globalQueue async complex job 当用户单击取消按钮时 我调用 self dism
  • Python 上的 MongoDB Atlas 身份验证失败

    我已经在 Heroku 上部署了这个 Python 应用程序 我希望它连接到 MongoDB Atlas 集群 我使用字符串连接到集群 但由于某种原因我不断收到raise OperationFailure msg errmsg code r
  • 云 Web 服务器上的 wkhtmltopdf.exe System.Security.SecurityException。我如何覆盖服务器安全策略

    我希望我的网站有一个功能 可以将页面内容打印为 PDF 我为此尝试了一些选项 但最好的匹配是 wkhtmltopdf 因为它还可以处理多语言字符 我让它在我的本地服务器上运行 但是当我将它上传到云网络服务器上进行托管时 它给了我以下错误 S
  • git:如何恢复 .gitignore 中的文件 [致命:空提交集已通过]

    我的 gitignore 文件有以下行 vendor 我修改了供应商文件夹中的一个文件 现在 当我通过执行更新我的包时 bin vendors install 我看到以下消息 捆绑包名称 有本地修改 请在再次运行此命令之前提交或恢复 推送它
  • 需要帮助在 bash 脚本中使用 grep/egrep 匹配模式

    我试图匹配给定字符串的所有字符 但这些字符应该按照 bash 脚本给出的顺序匹配 while gt 0 do case 1 in i arg 2 egrep arg words txt shift esac shift done sh ma
  • OpenGL ES iPhone - 绘制抗锯齿线

    通常 您会使用类似以下内容 glBlendFunc GL SRC ALPHA GL ONE MINUS SRC ALPHA glEnable GL BLEND glEnable GL LINE SMOOTH glLineWidth 2 0f
  • C# 中的枚举助手未给出预期结果

    基本上 由于某种原因 我没有收到正确的枚举类型 我无法弄清楚为什么 我的代码在下面 非常感谢您的任何指示 解释 编辑 类型 gt 更改为另一个名称 感谢大家的提醒 Helper public static T Convert
  • shell_exec() 如何选择要使用的 shell?

    这个问题在另一个线程中出现了 我想我会问 PHP 的 Shell 脚本循环不起作用 如果它使用popen 使用 bin sh在 Linux 上 的手册页popen says 命令参数是一个指向包含 shell 命令行的以 null 结尾的字
  • 当 fk 与 pk 不同时如何链接一对一关系 - EntityFramework

    我的数据库中有一个自定义用户表 我想与 aspnetusers 表创建一对一的关系 以便当我注册新客户时 通过 UserManager 的 applicationuser 类应该添加用户名 电子邮件 密码和学校代码到 users 表并在其自
  • 为什么 ffmpeg 在进程中随机停止?

    ffmpeg 感觉花了很长时间 然后我查看输出文件 发现它停在 6 到 8mbs 之间 完整编码的文件大约为 14mb 为什么 ffmpeg 停止了 我的代码锁定在 StandardOutput ReadToEnd 上 我不得不终止该进程
  • 子故障错误的微妙之处

    我有 ant 代码 可以在所有子目录中启动发布版本
  • 在声明式 SQLAlchemy 中创建容器关系

    我的 Python SQLAlchemy 应用程序管理一组节点 所有节点均派生自基类Node 我正在使用 SQLAlchemy 的多态性功能来管理 SQLite3 表中的节点 这是基数的定义Node class class Node db
  • SQL Server 2008 报告服务身份验证

  • 如何在 Django 中加入惰性翻译?

    我需要使用惰性翻译 但也需要进行翻译 如何处理 这段代码正在做我需要的事情 print ugettext lazy Hello world 现在我想将两个惰性翻译连接在一起并单独翻译 我现在这不起作用 为什么但想要有两个翻译字符串 prin
  • 为什么C在调用汇编函数时不将指针压入堆栈?

    我目前正在尝试获得一些从 C 调用汇编函数的经验 因此 我创建了一个小程序来计算所有数组元素的总和 C 代码如下所示 include
  • 返回 WPF 上的上一个窗口

    我是 WPF 新手 找不到此问题的答案 我有 3 个窗口 我想在它们之间导航 MainWindow gt Window1 gt Window2 On cancel按钮单击 Window2 我想返回到 Window1 我发现这段代码可以在 2
  • Angular2 加载时文件请求过多

    我正在制作一个网站Angular2我遇到了我认为的问题 在我的角度页面第一次加载时 SystemJS正在发出超过 50000 个请求来检索每个Angular2文件输入angular2 src目录 总共 第一次加载下载超过 4MB 启动时间超