AJAX EN MOINS DE 50 LIGNES

Signaler
Messages postés
111
Date d'inscription
dimanche 23 mars 2003
Statut
Membre
Dernière intervention
1 août 2008
-
mahlaoui
Messages postés
29
Date d'inscription
lundi 10 décembre 2007
Statut
Membre
Dernière intervention
13 octobre 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/46500-ajax-en-moins-de-50-lignes

mahlaoui
Messages postés
29
Date d'inscription
lundi 10 décembre 2007
Statut
Membre
Dernière intervention
13 octobre 2008

Many Thanks
ralecul
Messages postés
111
Date d'inscription
dimanche 23 mars 2003
Statut
Membre
Dernière intervention
1 août 2008

Je sais bien que this.asyn = false signifie que l'on est en mode synchrone.
Je pense juste qu'il y a une erreur au niveau de ton test : this.asyn = property.asyn || true;
Car quel que soit la valeur de property.asyn, this.asyn vaudra toujours true (false || true = true !)

PS : mes sources datent un petit peu, j'ai vraiment changé de façon de coder en javascript, je te conseille plutôt de jeter un coup d'œil aux sources disponibles sur mon site perso...
cs_Kimjoa
Messages postés
264
Date d'inscription
vendredi 6 mai 2005
Statut
Membre
Dernière intervention
19 septembre 2014

salut ralecul, merci pour ton commentaire :).
Pour ce ki concerne le bind dans la fonction de retour, celui ci permet d identifier l objet sur lequel on applique la fonction , et non pas l objet ajax, j aurais pu faire un exemple sans blinding, mais j ai pensé que ca serait interressant pour un novice de connaitre cette fonction indispensable des que l on commence a faire de l objet, fonction tiré de la bibliotheque prototype !!!

"Il manque pas mal de truc indispensable fournit de base avec la version de prototype:"
Justement c est un script fait uniquement pour des besoins très limiter, je n ai pas voulu copier prototype, seulement faire une source ajax la plus simple possible, et pour eviter de charger le presque 100ko de prototype

concernant les erreurs , this.asyn peut etre egal a false , cela veux dire que l on ne continue par l analyse du script avant le retour de la requete , cette option peut etre utile dans certain cas.
Tu as raison concernant les variables globales, et le onComplete .

vais allé voir tes source a+ :)
ralecul
Messages postés
111
Date d'inscription
dimanche 23 mars 2003
Statut
Membre
Dernière intervention
1 août 2008

Salut,

Bel effort ! Mais je vais rester sur la version de prototype...
Au contraire de ce que tu avances dans ta description, cette version est plus complexe à utiliser pour un noob.

Exemple :
---------
onComplete :this.maFonctionDeRetour.bind(this)
Je suis pas sur que ça soit très explicite comme méthode d'utilisation ...

Il manque pas mal de truc indispensable fournit de base avec la version de prototype:
- evalScript
- Ajax.Updater, Ajax.Request, Ajax.PeriodicalUpdater
- Gestion des erreurs...

En parlant d'erreurs : je n'ai pas testé ton code mais je pense qu'il doit y avoir quelques erreurs :
- this.asyn = property.asyn || true; //toujours égal à true
- boucle de test des ActiveXObject //je pense que this.obj doit rester égal à la dernière version testé (pas sur)
- trop de variable publique : "this.maVariable" remplaçable par "var maVariable"
- response qui est global
- onComplete non facultatif, ...

Je suis tout de même content de voir une tentative de clone de prototype.Ajax.
La réalisation est au-dessus des scripts standards que l'on trouve tout le temps avec des fonctions et variables globales...
Il ne manque plus qu'une véritable séparation entre les variables membres et publiques.

Bonne continuation !