Backbone 的使用 (三)—— Collections 篇

如果将一个Model对象比喻成数据库中的一条记录,那么Collection就是一张数据表。它表示为一个模型集合类,用于存储和管理一系列相同类型的模型对象。

举个简单的例子:

	// 定义模型类  
    var Book = Backbone.Model.extend();  
    // 定义集合类  
    var BookList = Backbone.Collection.extend({  
        model : Book  
    });  
    // 创建一系列模型对象  
    var book1 = new Book({  
        name : 'Effective Java中文版(第2版)'  
    });  
    var book2 = new Book({  
        name : 'JAVA核心技术卷II:高级特性(原书第8版)'  
    });  
    var book3 = new Book({  
        name : '精通Hibernate:Java对象持久化技术详解(第2版)'  
    });  
    
    // 创建集合对象  
    var books = new BookList([book1, book2, book3]); 

    console.log(book1);
    console.log(books);

上面我们依次定义了模型类Book 和集合类 BookList ,然后创建了3个模型对象并将它们存入到集合中。

看一下结果:
在这里插入图片描述
集合类中有2个key(models 和_byId) ,分别对应的是数组和json 对象,展开后内容就是上面的3个模型对象。

除了向构造函数中添加模型列表外,还可以直接传递数据。

	// 定义模型类  
    var Book = Backbone.Model.extend();  
    // 定义集合类  
    var BookList = Backbone.Collection.extend({  
        model : Book  
    });  
    var models = [{  
        name : 'Effective Java中文版(第2版)'  
    }, {  
        name : 'JAVA核心技术卷II:高级特性(原书第8版)'  
    }, {  
        name : '精通Hibernate:Java对象持久化技术详解(第2版)'  
    }];  
    // 创建集合对象  
    var books = new BookList(models); 

这里的book 和上面传实例化对象 所得到的结果是一样的。
为了偷懒我在想如果集合类中不声明 mode : Book 可不可以尼?

结果操作我得到一个结果,声明是可以去掉的,所造成是

如果你在定义集合类的时候没有设置model,那么集合会默认将原始数据转换为Backbone.Model类的实例

到这里我们就应该简单了解到collection 的作用了。至于下面的各个方法其实就很容易去理解了,可以看看这里说的很详细。
https://www.iteye.com/blog/yujianshenbing-1748826

至于发送数据到Server端 ,到后面有机会会和view整合到一起,列出一个demo 。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值