在网页上加载自定义javascript文件的简单方法?

在网页上加载自定义javascript文件的简单方法?,javascript,dependencies,Javascript,Dependencies,我正在从事一个Javascript失控的项目,因此我尽了最大努力将每个对象放入不同的文件中(当然,这是合理的……我有时会将相关对象分组,如果它们很小,则将它们放入一个文件中) 有一件事我确实遇到了麻烦,那就是管理这些对象的依赖关系。Javascript似乎无法包含/声明依赖项。。。老实说,我觉得这真的很烦人 更糟糕的是,我必须将这些依赖项放入它们所使用的单独html文件中。在如此多的页面底部包含了如此多的脚本标记之后,这绝对是一个难以管理的问题。以下是一个例子: <script src="

我正在从事一个Javascript失控的项目,因此我尽了最大努力将每个对象放入不同的文件中(当然,这是合理的……我有时会将相关对象分组,如果它们很小,则将它们放入一个文件中)

有一件事我确实遇到了麻烦,那就是管理这些对象的依赖关系。Javascript似乎无法包含/声明依赖项。。。老实说,我觉得这真的很烦人

更糟糕的是,我必须将这些依赖项放入它们所使用的单独html文件中。在如此多的页面底部包含了如此多的脚本标记之后,这绝对是一个难以管理的问题。以下是一个例子:

<script src="${base}/js/ui/autoCompleteWidget.js"></script>
<script src="${base}/js/pagelet/addStudentToStudyGroupForm.js"></script>
<script src="${base}/js/pagelet/studentListing.js"></script>
<script src="${base}/js/pages/studyGroups.js"></script>

这已经够糟糕的了,因为许多第一个依赖项都是在各种页面上反复声明的。更糟糕的是,在稍后的时间点,不得不在中间某处引入1个额外的依赖。然后我必须检查我的整个项目,并在需要的每个页面上反复注入一个脚本标记。由于HTML标记上没有编译时警告。。。如果我忘了在一页上写这个。。。这页根本不起作用。像这样的东西很难自动测试,除非我检查每个使用Javascript的页面,否则我无法知道

我在想。。。加载这些脚本最简单/最轻松的方法是什么?比如,什么是标准的方法来做它,强大,容易做,等等


谢谢

你可能想看看哪些库可以减轻这种情况下的痛苦。

你可能想看看哪些库可以减轻这种情况下的痛苦。

我们总共谈论了多少JS?是不是太多了,即使将其最小化为一个文件也会太大?@DA:我可以这样做,但我正在对这些javascript文件进行单元测试,我认为测试与被测试对象之间的比例为1:1是合适的。我还想说,最终会有30-40个大物体。我在法律上是盲人。。。所以把所有这些放在一个文件里实际上会让我的情况更糟。我非常喜欢一个实际的文件结构,因为我可以使用我的IDE快速地拉出正确的对象,而无需滚动等等。链接到HTML中的一个JS文件,并让该JS文件加载其余的所有文件。这样,您的每页上都会有所需的脚本。然后,作为部署过程的一部分,将所有这些文件通过最小化运行,以将它们合并并压缩到一个文件中供在线实际使用。。。我不想一次又一次地经历一些部署过程。由于使用了应用服务器,我已经有了一个庞大的工作流。这似乎需要更多的开销:(我们总共讨论了多少JS?是不是太多了,以至于即使将其最小化为一个文件也会太大?@DA:好吧,我可以这样做,但我正在对这些javascript文件进行单元测试,我认为测试和被测试对象之间的比例为1:1是合适的。我还想说,最终,最终会有30-40个大对象。我在法律上是瞎子…所以把所有这些放在一个文件中实际上会让事情变得更糟。我非常喜欢一个实际的文件结构,因为我可以使用我的IDE在不滚动的情况下快速拉出正确的对象。我会在开发端将所有文件分开。在你的应用程序中链接到一个JS文件HTML和一个JS文件,然后加载所有其他文件。这样,你在每个页面上都会有你需要的脚本。然后,作为部署过程的一部分,将所有这些文件通过最小化来运行,以将它们合并并压缩到一个文件中供在线实际使用。但是对于java项目和运行idea时,我喜欢运行我的tomc在服务器上直接从我的来源…我不想经过一些部署过程一遍又一遍。我已经有一个庞大的工作流程,因为它是因为使用应用服务器。这似乎是更多的开销:(我尝试过这个解决方案。感谢链接。不幸的是,当我给它一个很大的依赖项列表时…有时有效,有时无效。如果我不断刷新页面,它大部分都有效…但有时,jquery没有按它应该的方式加载…这会导致页面失败。我尝试过这个解决方案。感谢链接。不幸的是恩,我给了它一个很大的依赖项列表…有时有效,有时无效。如果我不断刷新页面,它大部分都有效…但有时,jquery没有按应有的方式加载…这会导致页面失败。