2

我看到了很多有关该find功能的示例,但现在当我使用最新版本(我认为是 4.1.1a)时,它说 find 功能已被弃用。

我有这个:

init: function(){
  this.control({
    'mainMenuTree': {
      itemdblclick: this.itemdblclicked
    }
  });
  this.callParent();
},

itemdblclicked: function itemdblclicked(me, record, item, index, e, eOpts){
  var itemClicked = record.getData().text;
  var tabPanel = Ext.getCmp('centerPanel');
  //var tabBar = tabPanel.getTabBar();
  tabPanel.add({
    xtype: 'tab',
    title: itemClicked,
    id: itemClicked
  });
  //tabPanel.items.find(function(i){console.log(i)});
  //console.log(tabPanel.items);
}

因此,我需要获取一组选项卡来检查选项卡是否存在。我不需要逻辑,我只需要函数或属性的名称来获取项目数组(每个选项卡的 id)。

谢谢你。:)

4

1 回答 1

2

我自己做的。:) 不管怎么说,还是要谢谢你。:)

itemdblclicked: function itemdblclicked(me, record, item, index, e, eOpts){
        var itemClicked = record.getData().text;
        var tabPanel = Ext.getCmp('centerPanel');
        //var tabBar = tabPanel.getTabBar();


        var items = tabPanel.items.items;

        var exist = false;
        for(var i = 0; i < items.length; i++){
            if(items[i].id === itemClicked){
                tabPanel.setActiveTab(i);
                exist = true;
            }
        }
        if(!exist){
            tabPanel.add({
                xtype: 'panel',
                title: itemClicked,
                id: itemClicked,
                closable: true
            });
        }
    }
于 2012-11-18T10:26:32.980 回答