2013-05-13 1 views
1

갱신 값 addone 메신저에서

this.section = "aaa"; 
var sectionview = new AA(model:this.model,section:this.section); 

부처럼 볼의 새로운 객체를 생성 백본 뷰로 전달 AA view.But 지나가는 메신저 다른보기의 전역 변수 부 값은 단부 변화를 얻을 통과 이후 의 난 뷰 AA 작성시 전달 부의 값을 갱신 할 수있는 방법이 다음

this.section = "aaa"; 
var sectionview = new AA(model:this.model,section:this.section); 
. 
. 
. 
. 
. 
. 
this.section = "sss"; 

등을 추가 ??? 예상 대답은 AA보기

this.options.section = "sss" not "aaa" 

입니다

+0

나는 약간 혼란 스럽다. 어디에서 잘못된 가치를 얻습니까? 'AA' 내부 또는'addone' 뷰 안에 있습니까? – muneebShabbir

+0

어디서나 값이 잘못되지 않습니다 .. AA 뷰에서 섹션의 업데이트 된 값만 원합니다. – NewBuddy

답변

3

이런 종류의 물건에 대한 일반적인 접근 방식은 글로벌 술집/서브 이벤트 디스패처 구축 Backbone.Events을 확장하는 것입니다 : 그런 다음보기를

window.pub_sub = _({}).extend(Backbone.Events); 

pub_sub에서 이벤트를 수신 할 수있다 :

initialize: function() { 
    this.listenTo(pub_sub, 'change:section', this.section_changed); 
    //... 
}, 
section_changed: function(section) { 
    this.section = section; 
    // And whatever else needs to happen... 
} 
,536 당신이 섹션을 변경할 때

그런 다음 이벤트를 트리거 :

pub_sub.trigger('change:section', new_section_value); 

당신은 이벤트가 트리거되도록 어딘가에 하나의 함수 호출을 통해 글로벌 섹션에 모든 변경 사항을 깔때기 싶어하지만 당신이 그 일을해야 어쨌든 일종의.

데모 :

당신이 후 지속 글로벌 설정 모델에 pub_sub을 변경하고 보통 모델 지속성 메커니즘을 사용하여 이러한 설정을해야하는 경우 http://jsfiddle.net/ambiguous/rPtfS/.