2011-03-12 58 views
0

我想創建這樣ExtJS的可更換項目

Ext.onReady(function() { 

    Ext.QuickTips.init(); 

    Ext.create('Ext.Viewport', { 
     layout: 'fit', 
     id: 'cmpWithReplacebleItems' 
    }); 

    Ext.getCmp('cmpWithReplacebleItems').items = [new SomeComponent()]; 
}); 

SomeComponent

SomeComponent = Ext.extend(Ext.Viewport, { 
    layout: 'fit', 
    items: [{ 
      xtype: 'panel', 
      html: 'test', 
      title: 'My Panel' 
     }] 
}); 

的代碼的東西你可以看到,我想 'cmpWithReplacebleItems' 項目是replaceble。但是,當我嘗試此代碼時,我調整大小時出現一些錯誤...

問題是..什麼是正確的方法來做到這一點?

回答

2

構建組件後,不能直接修改這些項目。您想要使用Ext.Container方法addremoveremoveAll修改項目。

Ext.onReady(function() { 

    Ext.QuickTips.init(); 

    Ext.create('Ext.Viewport', { 
     layout: 'fit', 
     id: 'cmpWithReplacebleItems' 
    }); 

    var cmp = Ext.getCmp('cmpWithReplacebleItems'); 
    cmp.add(new SomeComponent()); 
    cmp.doLayout(); //important to layout again after adding/removing 
}); 
+0

tnx,我實際上是在一分鐘前通過我自己找到了這個:D但真的tnx對你回答.. – 2011-03-12 22:13:15