【问题标题】:RequireJS with Multiple modulesRequireJS 与多个模块
【发布时间】:2013-06-05 07:13:22
【问题描述】:

我过去开发过基于 JavaScript 的 Web 应用程序,现在正在尝试了解 RequireJS。 几乎所有的 Web 应用程序都有页面,需要一些常见的 JS 和一些特定于页面的 JS。我想使用 RequireJS 组织整个 Web 应用程序。 所以我的问题是我们可以使用 RequireJS 做同样的事情吗?如果是的话,JS的解体究竟是怎么做的? 假设我有一个 app.build.js 如下;

({
    appDir: "../",
    baseUrl: "js",
    dir: "../../appdirectory-build",
    paths: {
      jquery: 'libs/jquery/jquery-1.8.2',
      underscore: 'libs/underscore/underscore-1.4.4',
      backbone: 'libs/backbone/backbone-0.9.10',
      templates: '../templates',
      app: 'app'
    },

    shim: {
      underscore: {
        exports: '_'
      },
      backbone: {
        deps: ["underscore", "jquery"],
        exports: "Backbone"
      }
    },
    modules: [
        {
            name: "main"
        }
    ]
})

我们可以在这里定义多个“模块”吗(就像我们有“主”一样)。请提供更多详细信息。 RequireJS 也被称为 AMD。那么这里的异步到底是什么? 谢谢。

【问题讨论】:

  • AMD 的异步特性可以通过查看 RequireJS 在加载应用程序时发出的请求来了解。您将看到它会执行多个请求,并且只有在加载了所有依赖项后才会继续执行模块的代码。依赖项的实际加载是异步完成的。

标签: javascript jquery requirejs amd


【解决方案1】:

在过去的几个月里,我整理了一些 Mimosa 构建的应用程序示例,这些应用程序捆绑了许多模块以供在应用程序中使用。

这个有嵌套的主模块,共3个构建文件:https://github.com/dbashford/MimosaNestedMains

这是一个相当幼稚的示例,但您可以看到如何将他们的应用分成小块并单独构建。要查看 Mimosa 构建和使用的 r.js 运行配置,请运行 mimosa build -oD。这会将调试日志发送到控制台,其中包括每个文件的 r.js 配置。

开始使用含羞草:http://mimosajs.com/started.html

【讨论】:

    猜你喜欢
    • 2016-12-24
    • 1970-01-01
    • 1970-01-01
    • 2012-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多