2013-11-21 3 views
0

제목에서 말했듯이 동기화 할 때 내 모델의 어떤 속성이 변경되었는지 확인할 수있는 방법이 있습니까? 나는 개별 속성에 대한 존재하지 않는이 메커니즘을 말할 수있는 건동기화시 변경된 속성 확인 방법

var MyModel = Backbone.Model.extend({ 

    initialize: function(){ 
     this.on({ 
      'sync:Name' : 'onSyncName' 
     }) 

     onSyncName: function(){ 
      alert('Name saved!'); 
     } 
    } 
}) 

: 이상적인 상황이 change 청취자와 같은 기능, 그래서 내가 좋아하는 뭔가를 줄 수있는 메커니즘을 것 나를 위해

전체적으로 sync은 전체 모델 자체를 나타냅니다.

답변

0

마지막 세트에서 변경된 속성의 해시를 반환하는 모델의 changedAttribute 함수를 사용할 수 있습니다.

var MyModel = Backbone.Model.extend({ 

    initialize: function(){ 
     this.on({ 
     'sync' : 'onSync' 
     });   
    }, 
    onSync: function(model){ 
     _.each(model.changedAttributes(), function(value, key, list) { console.log("key" + key + " value " + value); 
    } 

}) 

동기화되는 전체 모델로만 속성이 존재하지 않고 이해가되지 않습니다에 대한 동기 이벤트