Ember.js에서 새 라우팅 기능을 사용할 때보기에 정의 된 속성 및 액션 핸들러가 해당 템플릿에서 액세스 할 수없는 것으로 보입니다. 대신 컨트롤러의 속성 만 사용할 수 있으며 앱은 라우터에서 액션 핸들러를 찾습니다. 여기 라우팅을 사용할 때 뷰 속성 및 액션 핸들러에 어떻게 액세스합니까?
문제의 예입니다 : http://jsfiddle.net/InMatrix/wtUML/3/당신은 내 프로필을 클릭하면 ---> 사진 ---> 테스트, 당신은 콘솔에서이 오류를 얻을 것이다 :
수를 상태root.profile.photos의 이벤트 testButton에 응답하지 않습니다.
App.PhotosView에 정의 된 다음 동작 처리기는 이벤트에서 사용할 수 없습니다.
App.PhotosView = Em.View.extend({
templateName: 'photos',
testButton: function(){
alert('test Button');
}
});
관련 뷰 클래스에서 액션 핸들러를 유지할 수있는 방법이 있습니까? 내가 놓친 게 있니?
감사합니다! 그게 내가 원하는거야. FWIW, 뷰 속성에 액세스하는 방법을 찾았습니다. "뷰"를 추가하십시오. 속성 이름 앞에 {{view.property}}. – Tao
예, 컨텐트 컨텍스트가 컨트롤러로 변경되었습니다. 변화에 발 맞추기가 어렵습니다. – buuda