Development Tip

백본 0.9.9 : listenTo와 on의 차이점

yourdevel 2021. 1. 7. 20:06
반응형

백본 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 : 뷰를 다시 채우거나 다시 만드시겠습니까?

여기에서 내가 쓴 내용을 읽을 수 있습니다.


언제 뷰를 작성, 모두 listenToon이벤트 처리를 추가합니다. 그러나 뷰가 파괴되면 listenTo호출이 자동으로 이벤트 핸들러를 제거합니다 . 이것은 메모리 누수 와 좀비 이벤트 리스너를 방지합니다 .

따라서 on핸들러를 직접 관리하려는 경우 사용 하십시오. 전화 만하세요 off. 그렇지 않으면을 호출하십시오 listenTo.

ReferenceURL : https://stackoverflow.com/questions/14041042/backbone-0-9-9-difference-between-listento-and-on

반응형