是否有一个“问题”;同步;JavaScript应用程序的模块定义框架?

是否有一个“问题”;同步;JavaScript应用程序的模块定义框架?,javascript,Javascript,我正在寻找一个“模块定义”框架,以便在部署JavaScript应用程序时在服务器上运行 我知道require.js和其他AMD框架。但是,在我的生产代码中实现define()和require()的必要性并不符合我的目的,因为应用程序将部署在一个文件中,所以我不需要异步注入脚本的能力 是否有一个构建工具可以在不添加基础结构代码的情况下合并脚本 澄清一下:嵌入脚本的HTML页面与我的问题无关。合并过程应该在脚本级别完成 main.js: function a() { import("b");

我正在寻找一个“模块定义”框架,以便在部署JavaScript应用程序时在服务器上运行

我知道require.js和其他AMD框架。但是,在我的生产代码中实现
define()
require()
的必要性并不符合我的目的,因为应用程序将部署在一个文件中,所以我不需要异步注入脚本的能力

是否有一个构建工具可以在不添加基础结构代码的情况下合并脚本

澄清一下:嵌入脚本的HTML页面与我的问题无关。合并过程应该在脚本级别完成

main.js

function a() {
    import("b");
    b();
}
var b = function() {
    alert("b!");
};
b.js

function a() {
    import("b");
    b();
}
var b = function() {
    alert("b!");
};
应该简单地变成:

function a() {
    var b = function() {
        alert("b!");
    };
    b();
}

因此,您需要一个工具来查找和替换

<script src="SOURCE_URI" type="text/javascript"></script>
使用简单的_优化进行编译将代码缩短为:

使用高级_优化进行编译会进一步缩短代码 为此:

这两个脚本都会生成一个警告,显示“Flowers”,但 第二个脚本要小得多


那么为什么要使用require.js呢?只要加载1个JS文件,就完成了,为什么需要同步模块定义?这是没有意义的,同步很容易理解,它是默认实现的。另一方面,require.js有一个名为
r.js
,你应该阅读它。@N.B.“你为什么…你为什么…这没有意义”后面跟着“你应该阅读它”。那么到底是哪一个:这个问题没有意义,还是你提出了一个答案?下定决心;)@n-b我不喜欢一个包含10.000多行JavaScript代码的文件。这就是为什么我想在不同的文件中逻辑地分离我的代码。可能的重复不是我真正想要的。不幸的是,它不像连接脚本那么简单。我将更新我的问题…@mritz_p-正如我所说的,如果您连接所有脚本文件并通过JavaScript编译器/优化器运行它,它将在可能的情况下为您“内联”代码。
function unusedFunction(a){alert(a.text)}function displayNoteTitle(a){alert(a.title)}var flowerNote={};flowerNote.title="Flowers";displayNoteTitle(flowerNote);
var a={};a.title="Flowers";alert(a.title);