2013-06-08 33 views
6

Backbone.js model.set özelliğini kullanmaya çalışıyorum. Todo1.set uygulandıktan sonra ikinci uyarı işlevi sönmelidir. Ancak öyle değil. http://jsfiddle.net/SGEkn/backbone.js model.set çalışmıyor

var Todo = Backbone.Model.extend({ 
     defaults: { 
      title: "Harsh", 
      completed: false 
     }, 
     initialize: function() { 
      console.log('This model has been initialized.') 
     } 
    }); 

var todo2 = new Todo({ 
    title: 'Set through instantiation.', 
    completed: true 
}); 
console.log('Todo title: ' + todo2.get('title')); 
console.log('Todo completed ' + todo2.get('completed')); 

alert("ok"); 

todo2.set("title", 'Title set'); 

alert("ok"); 

console.log(todo2.get('title')); 
todo.set("completed", false); 

console.log('completed: ' + todo2.get('completed')); 
+2

Neden Backbone 0.3.3 kullanıyorsunuz? –

+0

benim hatam, bu yüzden onunla başka birçok konuya da sahip olduğumdan dolayı. – user1801879

cevap

13

tek tek argümanları nesneyi geçirmeden değil edilmelidir:
İşte jsfiddle bağlantıdır.

todo2.set({"title":'Title set'}); 
+0

'u işaretlediğiniz için teşekkür ederiz. Bu, – user1801879

+8

'todo2.set ('title', 'Title set')' i çalıştı, Backbone'un eski bir sürümünü kullanıyorsanız çok işe yarar. –

+0

ehh, eski sürümleri kullanıyorum, bu yüzden. şimdi mantıklı geliyor – user1801879