使用 require.js 将 jQuery、Underscore 和 Backbone 作为 AMD 模块包含在内的最佳方法是什么?

发布于 2024-12-23 03:37:39 字数 321 浏览 1 评论 0原文

我已经看到了许多不支持 AMD 的加载模块的变体,我想知道这样做的最佳做法是什么。

最终,我想编写这样的模块:

module.js:

define(["jQuery", "Underscore", "Backbone"], function($, _, Backbone) {
    ... module code here
}

但是使用 AMD 加载这些依赖项存在很多问题,因为它们并不全部兼容 AMD。

I've seen many variations to loading modules which do not support AMD yet, and I would like to know what is the best practice to do so.

Eventually, I would like to write modules like this:

module.js:

define(["jQuery", "Underscore", "Backbone"], function($, _, Backbone) {
    ... module code here
}

But there are a lot of problems with loading those dependencies using AMD since they are not all AMD compliant.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

萌辣 2024-12-30 03:37:39

我创建了一个待办事项列表样板 Web 应用程序,它将所有模块加载为 AMD 模块(没有加载程序)。

看看:

https://github.com/ronreiter/webapp-boilerplate

I've created a todo-list boilerplate web app which loads all modules as AMD modules (without loaders).

Check it out:

https://github.com/ronreiter/webapp-boilerplate

一直在等你来 2024-12-30 03:37:39

Thomas Davis 在他的未更新示例中提供了一个更好的示例(imo),用于加载 jquery/underscore/backbone。首先查看加载器 此处

它使用此处找到的 RequireJS order 插件来加载模块同步地。

Thomas Davis has a better example (imo) for loading jquery/underscore/backbone in his non-updated example. Start by looking at the loader here

It uses the RequireJS order plugin found here to load the modules synchronously.

烟若柳尘 2024-12-30 03:37:39

看一下这个示例。它很好地展示了如何将backbone 与requirejs 一起使用。它还展示了如何整齐地组织模型、视图和集合。

Take a look at this example. It nicely shows how to use backbone along with requirejs. It also shows how you can organize the model, view and collections neatly.

安人多梦 2024-12-30 03:37:39

最新版本的 RequireJS 添加了使用非 AMD JS 文件的功能。

require.config({ 
    'paths': { 
    "underscore": "libs/underscore-min", 
        "backbone": "libs/backbone-min"
    },
    'shim': 
    {
        backbone: {
            'deps': ['jquery', 'underscore'],
            'exports': 'Backbone'
        }
    }   
});

尝试一下。

The latest version of RequireJS adds the ability to use NON-AMD JS files.

require.config({ 
    'paths': { 
    "underscore": "libs/underscore-min", 
        "backbone": "libs/backbone-min"
    },
    'shim': 
    {
        backbone: {
            'deps': ['jquery', 'underscore'],
            'exports': 'Backbone'
        }
    }   
});

Give that a try.

霊感 2024-12-30 03:37:39

我对 AMD 不明白的一件事是,看起来它只在需要时才加载必要的 js,但是使用演示应用程序,当您访问应用程序进行第一页加载时,它会加载所有 js html css 文件。

One thing i don't understand about AMD is that looks like it loads necessary js only when it needs but with the demo application it loads all js html css files when you access the app for the first page load.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文