2012-11-16 2 views
2

나는 백본을 배우고 있으며 어떤 라이브러리에서 '켜짐'기능을 사용할 수 있는지 파악하려고합니다. 나는 이것이 jQuery라고 생각했지만, 그렇다면 API를 이해하지 못했다. 누군가가 'on'기능을 설명하거나 저를 몇몇 문서들에 링크시켜 주시겠습니까? 첫 번째 매개 변수는 이벤트입니다. 두 번째 매개 변수는 호출되는 함수입니다. 마지막 'this'는 무엇을 말하는가? (나는 호출 클래스라고 가정한다.) 왜 그것이 필요한가? 여기에 바로 애디 오스 마니에서 내 코드는, 이것은 앱 조회입니다 :Backbone.js on(),이 마지막 참조는 무엇입니까?

이 경우에 방법에
initialize : function() { 
     this.input = this.$('#new-todo'); 
     this.allCheckbox = this.$('#toggle-all')[0]; 
     this.$footer = this.$('#footer'); 
     this.$main = this.$('#main'); 

     window.app.Todos.on('add', this.addOne, this); 
     window.app.Todos.on('reset', this.addAll, this); 
     window.app.Todos.on('change:completed', this.filterOne, this); 
     window.app.Todos.on("filter", this.filterAll, this); 

     window.app.Todos.on('all', this.render, this); 

     app.Todos.fetch(); 
    }, 
+0

것은 당신이 '모든'(window.app.Todos.on를 참조하는 경우 :

애디의 할일 예에서

가 클릭 된 할 일보기에 대한 참조를 전달하고 ,이. 렌더, 이것); - Todos 컬렉션의 모든 변경 사항을 트리거합니다. (추가, 재설정, 변경 등) – nxtwrld

답변

1

(가) 백본의 이벤트 모듈에서오고있다. 이벤트 이름, 함수 및 컨텍스트라는 세 가지 매개 변수를 허용합니다. 컨텍스트는 'this'값이 함수 내부에 있어야하는 것을 결정합니다.

Todos.on("filter", this.filterAll, this); 당신의 단지 함수 내부의 backbone.js doc 마지막 [환경] 매개 변수가 될 것입니다 선택 상황이다에 따르면 귀하의 의견 인스턴스

0
object.on(event, callback, [context]) 

해야한다 '이'의 값을 filterAll 것을 요청 콜백 함수에 전달됩니다.

// Add a single todo item to the list by creating a view for it, and 
// appending its element to the `<ul>`. 
addOne: function(todo) { 
    var view = new app.TodoView({ model: todo }); 
    $('#todo-list').append(view.render().el); 
},