2012-09-26 16 views
8

Giả sử tôi có thể nhận được từ giao diện điều khiển javascript kết quả sau:Làm thế nào để có được Backbone.Collection từ Backbone.LocalStorage

var ls = new Backbone.LocalStorage("items"); 
ls; // {"name":"items","records":["1244f588-be3d-c493-5c86-b2abb997af82"]} 

làm thế nào tôi sẽ nhận được Backbone.Collection từ Backbone.LocalStorage?

PS:
bộ sưu tập trông giống như

[ 
{ 
"title":"test", 
"completed":false, 
"order":1, 
"id":"1244f588-be3d-c493-5c86-b2abb997af82" 
}, 
{ 
"title":"test2", 
"completed":false, 
"order":2, 
"id":"8a8658b9-b636-eac3-4c54-03c279a73c2d" 
} 
] 

Trả lời

9

Hoặc tạo ra một bộ sưu tập trống với collection.localStorage thiết lập để đối tượng Backbone.LocalStorage của bạn và lấy nó:

var c = new Backbone.Collection(); 
c.localStorage = new Backbone.LocalStorage("items"); 
c.fetch(); 
console.log(c.pluck('id')); 

hoặc sử dụng findAll trên đối tượng Backbone.LocalStorage của bạn để nhận được một loạt các mô hình trong bộ nhớ:

var ls = new Backbone.LocalStorage("items"); 
console.log(ls.findAll()); 

Một Fiddle để chơi với http://jsfiddle.net/nikoshr/8pHNG/

+0

collection.fetch() không thực thi không gọi lại khi bộ sưu tập là không có trong lưu trữ địa phương .. @nikoshr –

+0

fiddle của bạn bị hỏng. không thể chơi với điều đó – Mahi

+0

@mahi Nó bây giờ sẽ hoạt động – nikoshr

Các vấn đề liên quan