Я пытаюсь изучить extjs 4.1 MVC. У меня есть контроллер с несколькими вызовами ajax. Когда код запускается в Firefox, я вижу, что все вызовы ajax сделаны, но появляется предупреждение только одного из методов sucess. Хотя данные доступны для всех 4 вызовов. Любые предложения, что я делаю неправильно? код ниже:ExtJs Несколько вызовов Ajax
Ext.define('App.controller.StartupController', {
extend : 'Ext.app.Controller',
models : [ 'BasicModel' ],
stores : [ 'UserStore','RoleStore','RegionStore','ProductStore','FunctionStore' ],
views : [ 'FooterContainer', 'BodyContainer' ],
init : function() {
this.loadStore();
this.loadRole();
this.loadRegion();
this.loadFunction();
this.loadProduct();
this.control({
});
},
loadRole: function(){
// create an AJAX request for role
var roleStore = this.getRoleStoreStore();
Ext.Ajax.request({
url : 'forms/loadRole',
method : 'POST',
headers : {
'Content-Type' : 'application/json'
},
params : {
"test" : "testParam"
},
success : function(response) {
var jsonResp = Ext.JSON.decode(response.responseText);
roleStore.loadData(jsonResp);
Ext.Msg.alert("Info", "UserName from Server 1: "+ jsonResp.userName);
},
failure : function(response) {
var jsonResp = Ext.decode(response);
Ext.Msg.alert("Error", jsonResp.error);
}
});
},
loadRegion: function(){
// create an AJAX request for region
var regionStore = this.getRegionStoreStore();
Ext.Ajax.request({
url : 'forms/loadRegion',
method : 'POST',
headers : {
'Content-Type' : 'application/json'
},
params : {
"test" : "testParam"
},
success : function(response) {
var jsonResp = Ext.JSON.decode(response.responseText);
regionStore.loadData(jsonResp);
Ext.Msg.alert("Info", "UserName from Server 2: "+ jsonResp.userName);
},
failure : function(response) {
var jsonResp = Ext.decode(response);
Ext.Msg.alert("Error", jsonResp.error);
}
});
},
loadFunction: function(){
// create an AJAX request for function
var functionStore = this.getFunctionStoreStore();
Ext.Ajax.request({
url : 'forms/loadFunction',
method : 'POST',
headers : {
'Content-Type' : 'application/json'
},
params : {
"test" : "testParam"
},
success : function(response) {
var jsonResp = Ext.JSON.decode(response.responseText);
functionStore.loadData(jsonResp);
Ext.Msg.alert("Info", "UserName from Server 3: "+ jsonResp.userName);
},
failure : function(response) {
var jsonResp = Ext.decode(response);
Ext.Msg.alert("Error", jsonResp.error);
}
});
},
loadProduct: function(){
// create an AJAX request for product
var productStore = this.getProductStoreStore();
Ext.Ajax.request({
url : 'forms/loadProduct',
method : 'POST',
headers : {
'Content-Type' : 'application/json'
},
params : {
"test" : "testParam"
},
success : function(response) {
var jsonResp = Ext.JSON.decode(response.responseText);
productStore.loadData(jsonResp);
Ext.Msg.alert("Info", "UserName from Server 4: "+ response.responseText);
},
failure : function(response) {
var jsonResp = Ext.decode(response);
Ext.Msg.alert("Error", jsonResp.error);
}
});
},
loadStore : function() {
}
});
Вы правы. Пока я тестировал, я внимательно наблюдал. Сообщение MessageBox исправлено там, и сообщение изменилось. Поскольку мои сообщения, где схожие только с изменением числа, казалось, что только один подходит. Изменен код на «console.log», как это было только для отладки. – Asharan