我有一个带有商店负载的功能。那就是:
function PdCtrl_Posicionamiento_RegistrarPosicion(numeroPrograma, tren, fechaTren, ramal, secuenciaEstacion, kilometraje, hora, minuto, tipoOrigen, eliminaDependencia) {
storePdCtrl_Posicionamiento_RegistrarPosicion.load({
params: {
numeroPrograma: numeroPrograma,
tren: tren,
fechaTren: fechaTren,
ramal: ramal,
secuenciaEstacion: secuenciaEstacion,
kilometraje: kilometraje,
hora: hora + ":" + minuto,
tipoOrigen: tipoOrigen,
eliminaDependencia: eliminaDependencia,
usuario: NOMBRE
},
callback: function () {
var estado = new Array();
var err = storePdCtrl_Posicionamiento_RegistrarPosicion.getAt(0).get('ESTADO');
var mensaje = storePdCtrl_Posicionamiento_RegistrarPosicion.getAt(0).get('MENSAJE');
estado.push(err);
estado.push(mensaje);
return estado;
},
});
}
我需要在其他地方(在函数调用中)获取返回值(数组),但是对于ExtJs的工作方式(异步),我无法获得数组。以下几行不起作用:
var vl_estado = PdCtrl_Posicionamiento_RegistrarPosicion(numeroPrograma, tren, fechaTren, ramal, secuenciaEstacion, kilometraje, hora, minuto, tipoOrigen, eliminaDependencia);
console.debug("estado:" + vl_estado);
当我调试变量" estado"我没有任何价值。也许我不能以一种好的方式解释这种情况。对不起,谢谢。
答案 0 :(得分:0)
就像这样;
var doSomeThingWithVariable = function(passedVariable){
alert(passedVariable);
};
storePdCtrl_Posicionamiento_RegistrarPosicion.load({
params: {
numeroPrograma: numeroPrograma,
tren: tren,
fechaTren: fechaTren,
ramal: ramal,
secuenciaEstacion: secuenciaEstacion,
kilometraje: kilometraje,
hora: hora + ":" + minuto,
tipoOrigen: tipoOrigen,
eliminaDependencia: eliminaDependencia,
usuario: NOMBRE
},
callback: function () {
var estado = new Array();
var err = storePdCtrl_Posicionamiento_RegistrarPosicion.getAt(0).get('ESTADO');
var mensaje = storePdCtrl_Posicionamiento_RegistrarPosicion.getAt(0).get('MENSAJE');
estado.push(err);
estado.push(mensaje);
doSomeThingWithVariable(estado);
},
});
答案 1 :(得分:-1)
你试过了吗?
callback: function (records) {
if (records.length > 0) {
var estado = new Array();
var err = records[0].get('ESTADO');
var mensaje = records[0].get('MENSAJE');
estado.push(err);
estado.push(mensaje);
return estado;
} else {
return null;
},