我已经配置 requirejs 来加载核心库(jquery、下划线、主干)。现在我想添加我的主干模型、控制器、视图等以异步加载
我发现了很多关于这个主题的教程和很多“现成的”样板,不幸的是我提到大多数方法已被弃用或相当复杂(即使有更好的方法)。
一个例子是我如何为主要库配置 requirejs: https ://stackoverflow.com/a/10914666/1309847
那么如何使用简单有效的 Requirejs 配置加载主干视图、模型、集合、路由器、控制器和模板?
我听从了你的建议,但遇到了一些奇怪的错误
main.js
require.config({
paths: {
jquery: 'vendors/jquery/jquery',
underscore: 'vendors/underscore/underscore',
backbone: 'vendors/backbone/backbone'
},
shim: {
underscore: {
exports: '_'
},
backbone: {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
}
}
});
require(['app'], function(app){
});
应用程序.js
define(['jquery', 'underscore', 'backbone'], function($, _, Backbone){
var Message = new Backbone.Model.extend({
//idAttribute: '_id',
//defaults: { body: '' }
//url: function(){ return this.id ? '/messages/' + this.id : '/messages'; }
});
var newMessage = new Message({ body: 'hi' });
newMessage.save();
});
app.js 中出现错误:
Uncaught TypeError: Object [object Object] has no method 'apply'
当我评论新的 Backbone.Model.extend 部分时,我不再收到任何错误。