2009-12-11 7 views
0

Je travaille sur l'écriture d'une classe tweening dans as2 qui a une variable de rappel et je n'arrive pas à trouver un moyen d'obtenir la portée sans passer spécifiquement une variable de portée ainsi que. Cette classe d'interpolation doit fonctionner dans les classes ainsi que sur la ligne de temps. Voici à quoi ressemblent mes codes en ce moment.Recherche de la portée correcte d'un objet pour un rappel

params.scope[ params.onComplete ](params.onCompleteParams); 

params est un objet transmis à la classe. Cela fonctionne mais je ne veux pas avoir paramsscope là-dedans.

Ma question est, que dois-je faire dans la classe tweening pour m'assurer que j'ai la bonne portée pour la fonction de rappel sans utiliser params.scope?

+1

Si vous avez un exemple de code démontrant le problème, il vous sera utile d'obtenir une réponse utile et spécifique. – Parappa

Répondre

0

Une fonction ne connaît pas sa portée dans AS2 - elle ne contient aucune référence à celle-ci, sauf si vous en ajoutez une. Vous devrez utiliser un objet scope comme vous le faites.

Essayez d'examiner Function.call, Function.apply ou la classe mx.utils.Delegate pour trouver d'autres moyens de gérer la portée et les méthodes qui n'impliquent pas de crochets.

Questions connexes