En función de su aplicación se puede declarar la variable global.
Escenario 1: Declarar el interior de la configuración
Si se va a utilizar métodos de captador/definidor (es decir, cambiar la variable de frecuencia y luego ir por configuración basada)
Declarar los Appconstants
Ext.define('Practice.utilities.AppConstants', {
alias:'widget.AppConstants',
config:{
mainVarTest : 'mainVarTest',
},
testvar: 'Testing value',
foo: 'bar',
meh: 42,
constructor : function(options){
this.initConfig(options);
}
});
llamar a la variable
var AppConstants = Ext.widget("AppConstants");
console.log(AppConstants.getMainVarTest());
Escenario 2: Declarar el interior de la clase Singleton
Si la aplicación necesita variable global, pero que no será altera más dentro de la aplicación. Esta clase ayuda a cargar la variable constante solo una vez. (es decir, no vas a cambiar la variable). Este tipo es los juegos para su aplicación
Declarar
Ext.define('Practice.utilities.AppConstants', {
alias:'widget.AppConstants',
singleton : true,
testvar: 'Testing value',
foo: 'bar',
meh: 42,
});
Calling
var AppConstant=Practice.utilities.AppConstants;
console.log(AppConstant.foo);
Escenario 3: declarar como Estática
Estática es variable estática (exactamente igual como java).La ventaja de usar una variable estática es que el tiempo de vida de la variable es un período indefinido durante más tiempo hasta que se borre explícitamente.
Ext.define("Practice.utilities.AppConstants",{
statics : {
mainVarTest : 'mainVarTest'
},
});
Será fácil mantener todas las variables global2 en una clase. Entonces, ¿puedo incluso almacenar una "vista", una "tienda" usando el enfoque de @ sha? –
sí, pero no lo intenté! generalmente agrego todo a la misma var. como globalVar.myView, globalVar.myCtl. No sé cuál es la clase que usa benfit aquí. – Jom
¿Cómo accedo a 'store' que almacené en' globalvar.mystore'? ¿Es var accessstore = globalvar.mystore; ?? –