使用require.js将jQuery、Underscore和Backbone作为AMD模块的最佳方式是什么?
What is the best way to include jQuery, Underscore, and Backbone as AMD modules using require.js?
我已经看到了许多不支持AMD的加载模块的变化,我想知道这样做的最佳实践是什么。
最后,我想写这样的模块:
module.js:
define(["jQuery", "Underscore", "Backbone"], function($, _, Backbone) {
... module code here
}
但是在使用AMD加载这些依赖项时存在很多问题,因为它们并不完全兼容AMD。
我创建了一个待办事项列表模板web应用程序,它将所有模块加载为AMD模块(没有加载器)。
查看:
https://github.com/ronreiter/webapp-boilerplateThomas Davis在他的未更新的例子中有一个更好的加载jquery/underscore/backbone的例子。从这里的加载器
开始它使用这里的RequireJS命令插件来同步加载模块。
看一下这个例子。它很好地展示了如何使用主干和需求。它还展示了如何整齐地组织模型、视图和集合。
最新版本的RequireJS增加了使用NON-AMD JS文件的能力。
require.config({
'paths': {
"underscore": "libs/underscore-min",
"backbone": "libs/backbone-min"
},
'shim':
{
backbone: {
'deps': ['jquery', 'underscore'],
'exports': 'Backbone'
}
}
});
试试吧
我不理解AMD的一点是,看起来它只在需要的时候加载必要的js,但在演示应用程序中,当你访问应用程序的第一个页面加载时,它会加载所有的js html css文件。
相关文章:
- AMD格式是否要求模块为单件
- 使用Socket.io的异步模块加载(AMD)
- 如何将多个 AMD 模块捆绑在一个文件中
- AMD 模块中的动态导出
- 使用 Babel 将 ES6 模块转换为 ES5 AMD 模块,无法按预期工作
- JavaFX+Javascript:如何将Java对象注入AMD模块
- Javascript应用程序作为具有外部依赖关系的AMD模块
- 如何将预编译的hogan.js模板封装到AMD模块中
- 当混合node和amd模块时,requirejs()返回undefined
- 将模块化JavaScript(RequireJS/AMD)与ASP.NET MVC绑定并缩小
- 从简单的模块模式迁移到RequireJS AMD
- 如何创建一个结构化为AMD模块的可重用库
- 我可以在网络工作者中加载AMD模块吗
- 如何从TypeScript编译中现有的AMD js类继承到AMD模块
- 如何在初始功能之外以适当的 AMD 方式使用自定义 Dojo 模块
- 使用磁带/ES6 单元测试测试 AMD 模块
- 如何将 AMD 模块从单例转换为实例
- 为什么串联的 RequireJS AMD 模块需要一个加载器
- 如何从道场层加载 AMD 模块
- 从前台检索后台页面的 AMD 模块