백본 0.9.9 : listenTo와 on의 차이점
나는 그들이 Backbone 0.9.9에서 한 새로운 변경 사항을 배우려고 노력하고 있습니다.
현재 listenTo
와 의 차이점을 이해하는 데 문제가 있습니다 on
.
listenTo
var View = Backbone.View.extend({
tagName: "div",
intialize: function() {
this.listenTo(this.model, 'change', this.render);
},
render: function() {
this.$el.empty();
this.$el.append('<p>hello world</p>');
}
});
의 위에
var View = Backbone.View.extend({
tagName: "div",
intialize: function() {
this.model.on('change', this.render, this);
},
render: function() {
this.$el.empty();
this.$el.append('<p>hello world</p>');
}
});
예를 들어 메모리 누수를 피하기 위해 뷰가 제거되면 모든 이벤트에서 구독을 취소 listenTo
할 수 있다고 들었습니다 stopListening
.
이것이 유일한 이유입니까?
listenTo
그리고 stopListening
기본적으로, 지역 사회에서왔다. 이벤트를보다 쉽게 바인딩 및 해제 할 수 있습니다.
주제에 대해 작성한 내용을 포함하여 아이디어를 둘러싼 많은 기존 문서와 블로그 게시물이 있습니다.
Johnny Oshika는이 기술을 사용하여 처음 본 사람입니다. 원래 여기에 StackOverflow 질문에 대한 답변으로 게시되었습니다. Backbone.js : 뷰를 다시 채우거나 다시 만드시겠습니까?
여기에서 내가 쓴 내용을 읽을 수 있습니다.
- Backbone.EventBinder : 백본 앱을위한 더 나은 이벤트 관리
- 좀비! 운영! (백본 앱에서 페이지 전환 관리)
- Backbone.js 및 JavaScript 가비지 수집
언제 뷰를 작성, 모두 listenTo
와 on
이벤트 처리를 추가합니다. 그러나 뷰가 파괴되면 listenTo
호출이 자동으로 이벤트 핸들러를 제거합니다 . 이것은 메모리 누수 와 좀비 이벤트 리스너를 방지합니다 .
따라서 on
핸들러를 직접 관리하려는 경우 사용 하십시오. 전화 만하세요 off
. 그렇지 않으면을 호출하십시오 listenTo
.
ReferenceURL : https://stackoverflow.com/questions/14041042/backbone-0-9-9-difference-between-listento-and-on
'Development Tip' 카테고리의 다른 글
Visual Studio 2012의 Google 테스트 (0) | 2021.01.07 |
---|---|
Scala의 "접미사 작업" (0) | 2021.01.07 |
set () 함수 이해 (0) | 2021.01.07 |
Qt5에서 JSon 파일을 생성 / 읽기 / 쓰기하는 방법 (0) | 2021.01.07 |
Mailgun : 메시지가 "수락 됨"이지만 배달 시간이 오래 걸리거나 배달되지 않음 (0) | 2021.01.07 |