Extjs herencia múltiple?
-
30-10-2019 - |
Pregunta
Tengo una pregunta sobre la herencia múltiple en extjs. Si bien sé que simplemente puedo duplicar el código para que suceda, pero quiero saber si hay alguna forma de codificarlo de manera más eficiente.
Tengo un personalizado GridPanel
componente en mi marco, llamado Kore.ux.grid.GridPanel
. Se extiende Ext.GridPanel
con funcionalidades extra comunes y proporciona interfaz para acciones de descanso.
Poco después, mi colega quería tener EditorGridPanel
Para ser implementado de la misma manera, es decir, ella quiere que sea editable y, al mismo tiempo, tiene la capacidad de realizar acciones de descanso fácilmente.
Mi pregunta es, ¿hay alguna forma de extender? Ext.EditorGridPanel
para tomar el personalizado Kore.ux.grid.GridPanel
funcionalidades?
Perdón por cualquier error gramatical y puedo reformularlo si es confuso. ¡¡Gracias!!
EDITAR
Busqué en Google de nuevo y encontré hilos diciendo que es imposible. ¿Hay algún mejor patrón de codificación que deba seguir si tengo este problema?
¡Gracias!
Editar de nuevo
Lo siento, encontré la estructura que me conviene. Aquí está el método que me pareció útil:
var Common = function(){} //abstract class
Ext.apply(Common.prototype, {
a : function(){},
b: function(){}...
});
Ext.ux.SomePanelA = Ext.extend ( Ext.Panel, {
stuff : ............
});
Ext.ux.SomePanelB = Ext.extend ( Ext.Panel, {
diffStuff : ............
});
Ext.applyIf(Ext.ux.SomePanelA.prototype, Common.prototype);
Ext.apply(Ext.ux.SomePanelB.prototype, Common.prototype);
Fuente del código: http://www.sencha.com/forum/showthread.php?48000-multiple-inheritance&p=228271&viewfull=1#post228271
Vuelva a proporcionar sugerencias útiles si cree que tiene una mejor solución :) ¡Gracias!
No hay solución correcta