如果骨干模型(或集合)可能已经存在也可能不存在,那么如何扩展或混合?Backbone.js model mixins
这是我已经试过:
mymodels.A = ('A' in mymodels ? mymodels.A : Backbone.Model).extend({
/* url, initialize, parse, etc... */
});
或
mymodels.A = ('A' in mymodels ? mymodels.A.prototype : Backbone.Model).extend({
/* url, initialize, parse, etc... */
});
或
mymodels.A = _.extend('A' in mymodels ? mymodels.A : Backbone.Model, {
/* url, initialize, parse, etc... */
});
的思考?
编辑:
mymodels.A = (mymodels.A || Backbone.Model).extend({
/* url, initialize, parse, etc... */
});
EDIT2:
采取不同的办法....见下文
谢谢@helios。试过...也没有工作(请参阅我上面的编辑) – timborden
嗯,我试图说的是1)确保它创建2)扩展它。所以(1)点是一般的Javascript,而不是Backbone。如果mymodels.whatever不存在,创建它(如果需要,可以作为一个空模型)。只有然后扩大它:) – helios
谢谢@ helios ...结束了从不同的角度来看问题(请参阅我的答案)...感谢你的帮助,思考它 – timborden