【问题标题】:Can I include another source file in JavaScript?我可以在 JavaScript 中包含另一个源文件吗?
【发布时间】:2013-07-27 09:27:01
【问题描述】:

我正在开发一个大型 Web 应用程序,该应用程序主要由客户端的 JavaScript 驱动。我仍处于原型设计阶段,我正处于源文件变得很长的地步,我想将其拆分为多个文件。

例如,在 PHP 中,我只需调用 include('source.php')require_once('source.php')

有没有类似的方法在 JavaScript 中连接多个源文件?有许多大型 Web 应用程序大量使用 JavaScript,常见的解决方案是什么?

【问题讨论】:

  • 可以使用jquery append方法追加多个文件
  • 这太笼统了。一些应用程序/网站在服务器端将相关脚本文件合并为一个,其他应用程序/网站使用服务器端框架将相关脚本文件分别包含在每个页面上,其他应用程序/网站再次使用 javascript 根据需要插入脚本标签等。这一切都取决于你需要什么.

标签: javascript web-applications include organization code-structure


【解决方案1】:

RequireJS 是满足此要求的流行解决方案。

【讨论】:

【解决方案2】:

你可以有一个“includer.js”,它只会包含其他 JS 文件,如下所示:

includer.js

var files = ['someScript', 'anotherScript', 'moreScript']
for (var i = 0; i < files.length; i ++) {
    var scriptEl = document.createElement('script')
    scriptEl.src = files[i] + '.js'
    document.head.appendChild(scriptEl)
}

HTML

<script src="includer.js"></script>

【讨论】:

    【解决方案3】:

    我用 Java 编写了一个工具,专门用于通过检测您的依赖项和捆绑您的 javascript 来管理 Web 应用程序的大型 javascript 代码库,让您只需添加和更改文件,而不必担心要包含哪些文件以及以什么顺序包含(只要当您符合命名方案和文件夹结构时)

    http://damonsmith.github.io/js-class-loader/

    它也适用于非 Java 应用项目。

    【讨论】: