저는이 기능을 꽤 오랫동안 사용할 수있게하려고 노력해 왔지만 여전히 청취자 내부에 Afterrender를 추가하는 것을 제외하고는 솔루션을 찾을 수 없었습니다. 하지만 컨트롤러가 그것을 처리하기를 원합니다.하이퍼 링크 클릭시 ExtJS 컨트롤러 트리거
아무도 내가 이것을 해결할 수있는 아이디어가 있습니까?
이
는/나는 순간 http://pastie.org/2751446controller/App.js
Ext.define('HD.controller.App', {
extend: 'Ext.app.Controller'
,views: [
'core.Header',
'core.Navigation',
'core.Content'
]
,init: function() {
this.control({
'navigation a[id=tab1]': {
click: this.newTab
}
})
}
,newTab: function() {
console.log('Tab 1 should be loaded now');
}
});
보기/핵심 내 파일이 무엇인지 Navigation.js
Ext.define('HD.view.core.Navigation', {
extend: 'Ext.panel.Panel'
,name: 'navigation'
,alias: 'widget.navigation'
,layout: 'accordion'
,region: 'west'
,width: 200
,title: 'Navigation'
,collapsible: true
,items: [
{
title: 'Title 1'
,html: '<a id="tab1" style="cursor:pointer;">Tab 1</a>'
},
{
title: 'Title 2'
,html: 'Second'
}
]
});
감사합니다. 나는 직장에서 집에 갈 때 일하는 것을 무언가로 돌려 보겠습니다. – Ole
나는 이것을 풀려고 노력해 왔습니다. 보기의 Afterrender에있는 설명을 경고로 바꾸면 올바르게 시작됩니다. 그러나 그것은 내가 고민하고있는 뷰와 컨트롤러 사이의 연결입니다. 또한 컨트롤러에서 "newTab"부분과 관련하여 올바르게 수행했는지 확신 할 수 없습니다. 다음은 현재 코드입니다 : http://pastie.org/2757329 – Ole
'afterrender' 리스너를 컨트롤러로 옮깁니다. 내 편집을 참조하십시오. –