1
아래 코드를 붙여넣고 데이터가 이미 모델의 기존 배열에 푸시 될 때 '변경시'가 실행되지 않지만 전체 배열이 재설정되면 해고됩니다.변화가없는 백본 모델
var BookModel = Backbone.Model.extend({
defaults : {
"subject" : [0,4]
},
initialize : function() {
this.on('change',this.fetchResults);
},
fetchResults : function() {
console.log("fetch");
}
});
var myModel = new BookModel();
var subjects = myModel.get('subject');
subjects.push(2); //fetch does not get called
//subjects = []; //fetch gets called
myModel.set({"subject": subjects});
바이올린 : 값이 실제로 변경 될 때 http://jsfiddle.net/WnNQk/
위 코드를 변경했습니다 .. var subjects = myModel.get ('subject'). slice(); subjects.push (2); 이게 제대로 작동하는 것 같은데, 맞습니까? – user1184100