Javascript 将requirejs模块与构建脚本连接起来

Javascript 将requirejs模块与构建脚本连接起来,javascript,requirejs,r.js,Javascript,Requirejs,R.js,我正在尝试缩小并将require模块连接到一个文件中 例如,如果我有一个名为article.js的文件,如下所示: define(["jquery","flexslider","share_div"],function(){}); 我希望将所有这些依赖项合并并缩小为一个文件 我的构建脚本中有以下内容,但它不是将文件组合在一起,而是缩小 这是我的build.js文件: { "appDir": "../js", "baseUrl": "../js", "dir": "../

我正在尝试缩小并将require模块连接到一个文件中

例如,如果我有一个名为article.js的文件,如下所示:

define(["jquery","flexslider","share_div"],function(){});
我希望将所有这些依赖项合并并缩小为一个文件

我的构建脚本中有以下内容,但它不是将文件组合在一起,而是缩小

这是我的build.js文件:

{
    "appDir": "../js",
    "baseUrl": "../js",
    "dir": "../www-build",
    "mainConfigFile": "../js/common.js",

    "modules": [
        {
            "name": "common"
        },
        {
            "name": "page/article",
            "exclude": ["common"]
        }
    ],
    "paths": {
        "jquery": "empty:",
        "jquery_ui": "empty:",
        "twitter_bootstrap": "empty:"
    }
}
我对Require和构建脚本的理解可能是错误的,但我设想将文件连接在一起


请提供任何指导。

若要缩小作为依赖项跟踪的各个模块的嵌套依赖项,请在生成文件中指定此附加属性:
findnestedependencies:true
。(请参见本手册第318-324行。)


如果articles.js是common.js中的一个依赖项,并且您正在通过common.js进行跟踪,以构建一个连接的、精简的文件,则会出现这种情况。如果您只是尝试构建单个模块本身,我不确定是否缺少连接

您在评论中包含的
build.txt
文件(我所指的评论在我写下答案后被Andy删除)有点难读,因为它没有作为预格式化代码包含。从您提供的文件中可以看到,
r.js
确实将
article.js
的依赖项连接到一个文件中。看来你已经解决了你原来的问题


至于为什么你的输出没有出现在正确的目录中,我只能推测。您在问题中显示的
build.js
文件被设置为将所有内容放入
。/www build
,但是您的
build.txt
文件显示了存储在
。/js
中的输出。这里是猜测的部分:有时当我们在试图找到解决方案时,我们会在这里和那里做出改变,而忘记了我们在哪里。那当然发生在我身上。然后我要做的是清理我的开发树(删除构建),检查我的构建配置,以确保我认为使用的内容确实被使用,然后重新运行构建。

看看您在问题中显示的内容,在我看来,您应该得到您所期望的。为了进一步分析,向我们展示
r.js
创建的
build.txt
文件的内容将非常有用。(它将位于输出目录的根目录下。)如果article.js文件列出了它需要的依赖项,那么我是否正确理解优化过程应该将所有这些依赖项连接到构建的article.js文件中?