2013-06-08 3 views
6

Я пытаюсь использовать свойство backbone.js model.set. Вторая функция предупреждения должна срабатывать после выполнения команды todo1.set. Однако это не так.
Вот jsfiddle ссылка: http://jsfiddle.net/SGEkn/backbone.js model.set не работает

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

Почему вы используете магистраль 0.3.3? –

+0

моя ошибка, вот почему у меня тоже много других проблем. спасибо за указание, что вне – user1801879

ответ

13

Вы должны передать объект, а не аргументы в индивидуальном порядке.

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

Спасибо, что сработало – user1801879

+8

'todo2.set ('title', 'Title set')' отлично, если вы используете не древнюю версию Backbone. –

+0

ehh, я использую действительно старую версию, вот почему. теперь имеет смысл – user1801879

Смежные вопросы