Sencha Architect 无法从 DataView OnItemTap 导航到列表视图



任何人都可以让我知道我在以下代码中做错了什么吗?当我单击数据视图项时,我会收到错误:

 Uncaught TypeError: Object [object Object] has no method 'getMainView' app.js:69888

我的代码如下:

Ext.define('DTZMobility.view.DashboardView', {
extend: 'Ext.dataview.DataView',
alias: 'widget.dashboardView',
requires: [
    'Ext.XTemplate'
],
config: {
    baseCls: 'rd-tiled-view',
    fullscreen: true,
    scrollable: 'vertical',
    itemCls: 'rd-tiled-view-item',
    store: 'moduleStore',
    itemTpl: [
        '<div>{name}</div>'
    ],
    listeners: [
        {
            fn: 'onDataviewItemTap',
            event: 'itemtap'
        }
    ]
},
onDataviewItemTap: function(dataview, index, target, record, e, eOpts) {
    var workorderlist = Ext.create('widget.workorderlist'), // Create work order list View
        mainView = this.getMainView();              // Main view
    console.log("Created mainview");
    // Navigate to Sign In Panel
    mainView.push({
        xtype: "workorderlist",
        title: "Work Orders"
    });
}
 });

我终于想通了。itemtap 事件的事件处理应如下所示:

 onDataviewItemTap: function(dataview, index, target, record, e, eOpts) {
    var workorderlist = Ext.create('widget.workorderlist');
    var c = Ext.getCmp('mainView');
    if(c === undefined) {
    c = Ext.create('DTZMobility.view.MainView');
    }
    Ext.Viewport.animateActiveItem(c, {type:'slide'});
    // Push the workorder list to the mainview
    c.push({
        xtype: "workorderlist",
        title: "Work Orders"
    });
}

最新更新