@52fhy
2016-01-22T16:30:09.000000Z
字数 1119
阅读 480
backbone
backbone里的集合(collection)其实就是model的『集合』。
集合可以添加(add)model,也可以移除(remove)model。利用集合,我们可以方便的一次性遍历数据(遍历的结果就是一个个的model),或者更新数据。
下面例子演示了集合的基本操作。
collection.add(model) //添加
collection.remove(model) //移除
collection.each(function(model, index){}); //遍历
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>title</title>
<script src="lib/jquery-1.10.2.js"></script>
<script src="lib/underscore.js"></script>
<script src="lib/backbone.js"></script>
</head>
<body>
<script>
var book = Backbone.Model.extend({
initialize: function(){
//console.log('Hey , you create me!');
},
//默认属性
defaults: {
title:'well'
}
});
//定义collection
var books = Backbone.Collection.extend({
model: book,
});
var book1 = new book({title: 'book1'});
var book2 = new book({title: 'book2'});
var book3 = new book({title: 'book3'});
//books实例
var bookself = new books;
//books有add方法,添加model
bookself.add(book1);
bookself.add(book2);
bookself.add(book3);
//可以移除model
bookself.remove(book3);
//可以打印看bookself有哪些内容
console.log(bookself);
//遍历boolself
//基于underscore这个js库,还可以使用each的方法获取collection中的数据
//与underscore本身的用法稍有不同
bookself.each(function(value, key, list){
//value是每个model
console.log(value.get('title'));
});
</script>
</body>