0

我正在尝试将 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 和构建脚本的理解可能是错误的,但我设想文件将连接在一起。

任何指导将不胜感激。

4

2 回答 2

0

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

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

于 2013-10-28T13:00:33.583 回答
0

要同时缩小作为依赖项跟踪的各个模块的嵌套依赖项,请将此附加属性指定为构建文件的一部分:findNestedDependencies: true. (请参阅完整 RequireJS 文档的第 318-324 行。)

这是如果articles.js 是在common.js 中找到的依赖项,并且您正在通过common.js 进行跟踪以构建连接和缩小的文件。如果您只是尝试构建单个模块本身,我不确定是否缺少连接。

于 2013-10-27T23:53:26.817 回答