Backbone.js 使用require js加载主干和关系主干
大家好,每次我只需要“主干”时,我都试图在require js中加载主干和主干关系,这是我的代码: main.js:Backbone.js 使用require js加载主干和关系主干,backbone.js,requirejs,backbone-relational,Backbone.js,Requirejs,Backbone Relational,大家好,每次我只需要“主干”时,我都试图在require js中加载主干和主干关系,这是我的代码: main.js: requirejs.config({ paths: { 'domReady': 'lib/require/domReady', 'text': 'lib/require/text', 'jquery': 'lib/jquery/jquery', 'underscore': 'lib/underscore',
requirejs.config({
paths: {
'domReady': 'lib/require/domReady',
'text': 'lib/require/text',
'jquery': 'lib/jquery/jquery',
'underscore': 'lib/underscore',
'backbone': 'lib/backbone/loader',
'relational': 'lib/backbone/relational',
'iosync': 'lib/backbone/iosync',
'iobind': 'lib/backbone/iobind'
},
shim: {
'underscore': {
exports: '_'
},
'backbone': {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
},
'relational': {
deps: ['backbone']
},
'iobind': {
deps: ['backbone']
},
'iosync': {
deps: ['backbone']
}
}
});
require([
'domReady!',
'jquery',
'backbone',
'models/application',
'views/application'
], function () {
// start the app
var applicationModel = new BACON.models.Application();
var applicationView = new BACON.views.Application({
el: $('body'),
model: applicationModel
});
});
和lib/backbone/loader.js:
define([
'lib/backbone/backbone',
'relational',
'iobind',
'iosync'
]);
但在chrome上运行我的应用程序会让我:
Uncaught Error: Load timeout for modules: relational,iobind,iosync
看来我有一个依赖循环。。。是否有一种方法可以实现这一点,或者是否有另一种方法可以实现这一点???在您的shim配置中,您添加了对关系到主干的依赖性,它引用了
libs/backbone/loader
,这将在加载lib/backbone/loader.js时生成一个循环
您应该将主干的路径配置更改为
'lib/backbone/backbone'
,并根据需要为加载程序添加另一个命名路径。在shim配置中,您添加了对关系到主干的依赖性,它引用了libs/backbone/loader
,这将在加载lib/backbone/loader.js时生成一个循环
您应该将主干的路径配置更改为“lib/backbone/backbone”
,并根据需要为加载程序添加另一个命名路径