0
나는 "deleteTodo" 이 here 설명처럼, 의미 론적 이벤트로 원시적 이벤트 (클릭)를 설정하고 싶지만, 구현하지 않는 방법 :(
을 뷰에서 사용자 지정 이벤트를 트리거하는 방법 나는 다음과 같은 코드가 있습니다 :emberjs :
App.TodoView = Em.View.extend({
click: function(e) {
this.trigger("deleteTodo");
}
});
App.Router.map(function(match) {
match('/').to('index');
});
App.IndexRoute = Ember.Route.extend({
deleteTodo: function(e) {
// this code is never executed :(
}
}) ;
나는 내가 TodoView 클릭 함수가 호출되는 것을 볼 수 있지만, '클릭'을 IndexRoute에서하지 deleteTodo 기능 어떤 제안이 잘못 여기서 뭐 갈 수도
을 수행 한 후.?키엘
나는 그것을 얻을 수 없으므로 여기 jsfiddle를 만들었습니다 : http://jsfiddle.net/jeanluca/9Xasr/6/ 어떤 제안? –
이 컨트롤러는 this.get ('controller'). send ('deleteTodo')가 아니고 라우터에 이벤트를 보내려면 컨트롤러의 target 속성을 사용해야합니다. 예 : this.get ('controller.target'). send ('deleteTodo'). 내가 여기 피들을 업데이 트했습니다 : http://jsfiddle.net/9Xasr/9/ – guleria
당신이 컨트롤러에 이벤트를 보낼 때 그것은 라우터에 거품. 나는 컨트롤러에 이벤트를 처리하고자 할 경우에 보내기를 선호하며 무시한다면 라우터에 거품이 난다. –