javascript - 根据需要加载多个 JavaScript 与一次加载一个大文件

标签 javascript performance yii loading client-side

一次性编写一个包含网站所有页面行为的大型 JavaScript 文件是否更好?或者只加载特定于该页面的 JavaScript?

我知道一个大文件更适合缓存。然而,我认为浏览器可能会在不需要它们的页面上运行各种不必要的代码(“就绪”内容上的 jQuery 和附加事件)。

我也明白 HTTP 请求越少越好。所以我看到了 3 种情况:

  1. 整个网站的一个大文件
  2. 根据需要加载模块
  3. 一个特定于每个页面的组合文件,作为所需模块的组合动态生成。

什么是最好的?

我有 Yii 框架,如果有帮助的话。

最佳答案

您的想法是正确的 - 通常首选大文件,但这可能会导致执行不需要的 Javascript 部分。您的目标必须是将常用的 Javascript 文件与仅一页所需的部分分开。然后,您可以针对每种情况决定是要将其包含在大文件中还是要继续单独加载。尝试识别大多数用户访问的主要页面 - 那里所需的文件应该放在主文件中。

作为旁注,您可以查看Require.js用于在 Javascript 中构建模块关系和按需加载。

关于javascript - 根据需要加载多个 JavaScript 与一次加载一个大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13438764/

相关文章:

php - 使用 Yii、Mysql 下载 longblob 文件(adobe Illustrator 或 png)

arrays - 如何在CDetailView的单行中显示数组数据

javascript - 如何将 javascript 变量发送到 PHP 文件以分配给 PHP 变量?

javascript - 将脚本标签添加到 Markdown 文件

javascript - 使用handlebars.js电子邮件不显示base64图像

javascript - 自动遍历所有链接的事件

performance - 唯一记录的总和 - 比游标更好的性能

performance - select * from foo (100 000 rows) 需要 4 秒,这正常吗?

java - 使用访问器/ getter 可以更快吗?

php - AJAX 调用的 Yii SQL 分析