2014-04-04 1 views
10

Ho una domanda su ExtJSContenitore vs Pannello in ExtJS

Ho letto il documento ufficiale di Sencha doc ma ho una certa confusione circa 2 tipi di componenti .che del contenitore e il pannello.

Qual è la differenza tra contenitore e pannello? Quale dovrebbe essere usato nel qual caso?

Qualsiasi risposta è molto apprezzata.

risposta

17

Estratto dalla documentation of Container:

Classe di base per qualsiasi Ext.Component che può contenere altri componenti. I contenitori gestiscono il comportamento di base degli articoli contenenti, ovvero aggiungendo, inserendo e rimuovendo gli articoli.

Le classi di Container più comunemente usati sono Ext.panel.Panel, Ext.window.Window e Ext.tab.Panel. Se non hai bisogno delle funzionalità offerte dalle classi sopra menzionate, puoi creare un contenitore leggero da incapsulare da un elemento HTML alle tue specifiche usando l'opzione autoEl config.

Ciò significa che il Pannello estende il Contenitore, il che significa che può fare più cose. Ad esempio ha un'intestazione e supporta dokedItems (i.e barre degli strumenti), può essere chiuso (confronta anche gli altri eventi dei due componenti), mentre il contenitore non ha di default tali cose.

La regola generale è: utilizzare contenitori semplici sempre quando non sono necessarie le funzionalità del pannello, cioè quando è necessario ospitare altri bambini.

7

Ricordare sempre che i pannelli sono molto più pesanti del contenitore. Quindi usatelo solo bisogno.

0

Andrei I ha spiegato il processo abbastanza bene e qui c'è un altro documentation. In questa documentazione, il team di Sencha spiega come scegliere la classe corretta da estendere per tre di questi widget: Component, Container & Panel.

Which Class To Extend

La scelta del migliore classe di estendere è principalmente una questione di efficienza, e che le capacità della classe base deve fornire.