I. Démarche▲
- Définissez l'URL de la manière suivante : /echo/json/.
- Si vous faites une action de lecture (par exemple Model.load), vous devez positionner proxy.actionMethods.read à la valeur POST.
- Ajoutez "json" en tant que paramètre extraParam et passez-lui la chaîne json que vous désirez récupérer.
- Vous pouvez également ajouter un délai (delay) en tant que paramètre extraParam.
II. Simuler une requête AJAX▲
Voici une petite fonction pour vous aider à simuler une requête AJAX :
function sim(proxy, data, delay){
if(typeof data !== 'string'){
data = Ext.JSON.encode(data);
}
proxy.url = '/echo/json/';
proxy.actionMethods.read = "POST";
proxy.extraParams.json = data;
proxy.extraParams.delay= typeof delay == 'undefined' ? 0 : delay;
}
//usage:
sim(MyModel.proxy, {name:"neil"}, 2);
MyModel.load(1, {
callback: function(record, operation){ console.log( record.get('name'); ) }
});III. Exemple▲
Voici un exemple : http://jsfiddle.net/el_chief/9ksWE/Exemple JsFiddle
/*
C'est une fonction qui simule une requête AJAX dans JsFiddle.
Elle est compatible avec la version Sencha Touch 2.01.
*/
function sim(proxy, data, delay) {
if (typeof data !== 'string') {
data = Ext.JSON.encode(data);
}
proxy.setUrl('/echo/json/');
proxy.setExtraParams({
json:data,
delay: typeof delay === 'undefined' ? 0 : delay
});
proxy.setActionMethods({read:'POST'});
}IV. Remerciements▲
Cet article a été publié avec l'aimable autorisation de Neil McGuigan. L'article original peut être lu sur le blog ExtJS TutorialsExtJS Tutorials : How to simulate AJAX requests in JSFiddleHow to simulate AJAX requests in JSFiddle.
Je remercie également ClaudeLELOUP pour sa relecture attentive.




