繁体   English   中英

bones.js集合和多种类型的模型?

[英]backbone.js Collections and Multiple types of models?

我很好奇我是否可以将集合模型设置为父模型。 我可能刚好从骨干.js入手,但这里就是我要做的结构。

Collection  
  model:object

对象模型是其他两个子对象的父模型。

Object  
  ->Image  
  ->text  

这两个子模型扩展了对象模型。

这可行吗? 我希望我在这里说清楚自己。 感谢任何可以提供帮助的人。

是的,这是可行的。

我自己没有在集合中使用过不同的子类,但是, 是一篇关于Backbone继承的不错的文章,尤其是关于“超级集合中的子类”的文章。

在设置继承本身之后,作者使用collections parse函数创建相应的模型。

Backbone.Collection.extend({
    model: Location,
    parse: function (res) {
        _.each(res, function (location) {
            switch(location.phase) {
               case 'solid':
                  this.add(new Country(location));
               case 'liquid':
                  this.add(new Ocean(location));
               //...
            }
        }, 
        this);
     }
});

关于继承部分,您可能还想看看这个问题和JohnnyO的答案,这可能有助于您的代码设计并避免像

this.constructor.__super__.initialize.apply(this, arguments);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM