Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript EXTJS重用别名变为非功能选项卡_Javascript_Extjs - Fatal编程技术网

Javascript EXTJS重用别名变为非功能选项卡

Javascript EXTJS重用别名变为非功能选项卡,javascript,extjs,Javascript,Extjs,我有默认的4个选项卡,包括车辆管理、驾驶员管理、位置管理、路线管理。 我有一个工具栏,可以重新创建“车辆管理”选项卡 这是我提到的工具栏,因此当我们创建新的车辆管理选项卡时,将导致所有选项卡不起作用。也许我在新车管理中重复使用gridpanel 下面是我的示例代码: vehicle.js Ext.define('MyApp.view.MyVehicleGridPanel', { extend: 'Ext.grid.Panel', id : 'mygridpanel', //r

我有默认的4个选项卡,包括车辆管理、驾驶员管理、位置管理、路线管理。
我有一个工具栏,可以重新创建“车辆管理”选项卡

这是我提到的工具栏,因此当我们创建新的车辆管理选项卡时,将导致所有选项卡不起作用。也许我在新车管理中重复使用gridpanel

下面是我的示例代码:

vehicle.js

Ext.define('MyApp.view.MyVehicleGridPanel', {
   extend: 'Ext.grid.Panel',
   id : 'mygridpanel',
   //renderTo : 'vehiclebody',
   alias: 'widget.mygrid',
   header: false,
   store: UserStore,
   multiSelect: false,
   columns: [
                {
                    xtype: 'gridcolumn',
                    dataIndex: '_id',

                    text: 'Vehicle ID'
                },
                {
                    xtype: 'gridcolumn',
                    width: 126,
                    dataIndex: 'Plat_No',
                    text: 'Plat Number'
                },
                {
                    xtype: 'gridcolumn',
                    width: 200,
                    dataIndex: 'Name',
                    text: 'Added By'
                }
]
})
当用户单击toorbar时,将再次使用别名
mygrid

这是我的工具栏代码:

var BtnVehicle = Ext.getCmp('BtnVehicle');
    BtnVehicle.on('click', function(){
        tabs.add({
            closable: true,
            xtype : 'mygrid',
            //html: '<div style="width:100%; height:100%; background-color:#cccccc;"><iframe src="vehicle/vehicle.html" frameborder=0 scrolling="no" style="width:100%; height:100%;"></iframe></div>',
            iconCls: 'bus32',
            title: 'Vehicle Manage'
        }).show();
    })
var btnHicle=Ext.getCmp('btnHicle');
Btnhicle.on('click',function()){
tabs.add({
closable:是的,
xtype:'mygrid',
//html:“”,
iconCls:‘总线32’,
标题:“车辆管理”
}).show();
})
只要用户能够使用相同的设计创建未限制选项卡,就可以使用相同的gridpanel


为什么在创建第二个相同的
xtype:'mygrid'
时,该选项卡将变得不起作用?

GridPanel
config中删除
id
,而使用
itemId
& 使用
Ext.ComponentQuery


请参阅不要在GridPanel
中使用
id
,例如id:“mygridpanel”
@MMT如果没有
id
如何获得GridPanel,如
var grid=Ext.getCmp('mygridpanel')
?有其他方法吗?请检查@MMT作为答案发布,我会将其标记为答案