Я пишу приложение Todo с Backbone.jsBackbone.js. Правильно внести изменения
Вы можете увидеть часть моего кода ниже. Модель:
var Todo = Backbone.Model.extend({
defaults : {
title: 'Task Title',
complete: false
},
initialize: function(){
this.on("change:complete", function() {
alert("foo");
});
}
});
Вид:
var AppView = Backbone.View.extend({
collection: todoCollection,
el: 'body',
events: {
'click #tasks li .complete-task' : 'toggleComplete'
}
toggleComplete: function (e) {
var modelCid = $(e.target).parent('li').attr('id');
if (this.collection.get(modelCid)['complete']){
this.collection.get(modelCid)['complete'] = false;
} else {
this.collection.get(modelCid)['complete'] = true;
};
}
});
Но что-то работает неправильно и изменить событие в модели не работает. Я не могу понять, где у меня ошибки. Помогите мне, пожалуйста. 10q.
Я думаю, что это должно быть 'this.on («change'', если вы не обстреливают его вручную не 'изменение:. Complete' – Scriptable
' this.on (» change'' тоже не работает –
Ах, я думаю, что для события изменения, которое нужно уволить, вам нужно использовать метод 'set' на модели. – Scriptable