我正在开发一个相当大的 Web 应用程序,我将在其中使用 require.js所以我可以在它准备好生产后编译它,但我想使用骨干关系。我也将使用主干木偶,但我不确定它将如何包含在模块的定义函数中。
有人对此有任何经验吗?
我正在使用带有关系的骨干木偶并使用 Require.js 加载它们。基本思想是您需要确保加载关系。一种方法是在定义关系模型时将关系作为要求包含在内。
在我的项目中,我创建了一个名为bbloader.js
(主干加载器)的简单脚本,用于加载所有相关的主干模型:
define([
'backbone',
'iosync',
'iobind',
'relational',
'marionette',
'marionette.async'
], function(Backbone) {
return Backbone;
});
然后在整个项目中,我需要bbloader
而不是Backbone。例如:
define([
'jquery',
'underscore',
'bbloader',
// ...
], function($, _, Backbone) {
// ...
});
Backbone Relational 已经兼容 AMD,因此您不需要在那里做任何额外的事情。
偶100%支持AMD。有一些关于启动和运行的 wiki 页面,它非常简单:
https://github.com/derickbailey/backbone.marionette/wiki/Using-marionette-with-requirejs
我假设 BB-R 也可以工作,但我不使用此插件,所以我不是 100% 确定。