【发布时间】:2021-12-03 09:29:04
【问题描述】:
我正在开发一个小网站,主要的HTML页面基本上是这样的:
<html lang="en">
<head>
<script src="ace.js" type="text/javascript"><script>
<script src="ext-language_tools.js" type="textjavascript"></script>
<script src="mode-mongo.js" type="text/javascript"></script>
<script src="playground.js" type="text/javascript"></script>
<script type="text/javascript">
window.onload = function() {
ace.config.setModuleUrl("ace/mode/mongo", "mode-mongo.js")
configEditor = ace.edit(document.getElementById("editor"), {
"mode": "ace/mode/mongo",
"useWorker": false
})
}
</script>
</head>
<body>
<div class="editor">
</body>
</html>
(真实的可见here)。
以下是未缩小的文件:
前3个js文件使用requirejs,第4个只是普通js
有没有办法将这 4 个文件合并到一个文件中,以便在我的 HTML 中包含类似的内容?
<html lang="en">
<head>
<script src="bundle.js" type="text/javascript"><script>
<script type="text/javascript">
window.onload = function() {
configEditor = ace.edit(document.getElementById("editor"), {
"mode": "ace/mode/mongo",
"useWorker": false
})
}
</script>
</head>
<body>
<div class="editor">
</body>
</html>
编辑
我的目标是一次在单个 HTTP 请求中加载所有这些 js 代码
【问题讨论】:
-
你已经用“目标”更新了你的问题......但是XY-problem来了。 为什么你需要这个?
-
@x00 我真的不需要它,但我很好奇。实际上,我在问自己几个问题:是否可以将这些文件捆绑在一起?将文件捆绑在一起会导致更好的缩小/压缩吗?提供来自 2 个不同域的文件的开销是多少?所以我实现了史蒂夫提供的“快速方式”解决方案,并将其部署在我的产品服务器上,根据页面速度洞察实验室数据,有一个加速。现在我将等待几周,看看现实世界的数据是否显示出相同的趋势
-
如果你要找的话,我可以用 webpack 或 rollup 给它拍摄?
-
将所有 3 个文件中的代码复制并粘贴到一个主 js 文件中并调用它?除非我没有完全理解你的问题
标签: javascript merge module requirejs bundle