Tôi đã cố gắng làm việc này trong một thời gian nhưng tôi vẫn chưa thể tìm ra giải pháp cho việc này trừ việc thêm một người nghe bên trong vào xem. Nhưng tôi muốn bộ điều khiển xử lý nó.Kích hoạt bộ điều khiển ExtJS trên siêu liên kết click
Có ai có ý tưởng về cách tôi có thể giải quyết vấn đề này không?
Đây là những gì tôi có trong tác phẩm của tôi tại thời điểm http://pastie.org/2751446
controller/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');
}
});
xem/lõi/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'
}
]
});
Cảm ơn s_hewitt trả lời. Tôi sẽ cố gắng quay cái này thành thứ gì đó hoạt động khi tôi về nhà từ công việc :) – Ole
Tôi đã cố gắng giải quyết vấn đề này. Nếu tôi thay thế nhận xét trong phần sau của lượt xem bằng một cảnh báo, nó sẽ được kích hoạt đúng cách. Nhưng đó là liên kết giữa chế độ xem và bộ điều khiển mà tôi đang gặp phải. Ngoài ra tôi không chắc chắn nếu tôi đã thực hiện nó ngay về phần "newTab" trong bộ điều khiển của tôi. Đây là mã hiện tại của tôi: http://pastie.org/2757329 – Ole
Di chuyển trình xử lý 'afterrender' sang bộ điều khiển của bạn. Xem chỉnh sửa của tôi. –