Comment réferencier une propieté d'un acteur sûr un évenement de JavaScript #847
Replies: 2 comments
|
Salut, Pour obtenir par script un acteur qui est dans le même composite (ou scène), il faut utiliser // obtenir l'acteur de clé text2
const text2 = context.getActor('text2');Sinon, dans un autre thread (#732 (comment)) j'avais donné quelques éléments pour les scripts. // l'acteur en cours : this ou bien context.target
// par exemple :
// changer la propriété couleur de l'acteur
this.properties.color = 'red';
// ou bien
context.target.properties.color = 'red';
// pour aller chercher un acteur et le placer dans variable actor:
const actor = context.getActor('<la clé de l acteur>');
// pour aller chercher la scène ou le composite dans lequel est l'acteur :
context.stage;
// ou bien
this.stage;
// pour aller chercher la première scène qui contient l'acteur en cours (scène qui contient directement l'acteur ou la scène qui contient le composte qui contient l'acteur en cours ...)
this.scene;
// pour obtenir l'éventuel acteur écran qui contient la scène courrante
this.scene.screen
// pour remonter à travers les acteurs écrans et les scènes jusqu'à la scène principale
this.rootScene;
// pour changer une additionnelle :
this.additionals.prop1 = 'salut!';
// dans les scripts onValueChanged et onPropertyValueChanged, on a accès à :
// la nouvelle value :
context.newValue;
// l'ancienne :
context.oldValue;
// dans les scripts onPropertyValueChanged uniquement :
// on a accès à le chemin de propriété ou additionnelle qui a changé :
context.propertyPath;
// par exemple ça peut être la valeur ; 'properties.color' ou bien 'additionals.prop3'.
// dans un script de transformation de liaison comme onReadTransform
// la valeur reçue :
context.value;
// ⚠️c'est une transformation, donc il faut retourner la valeur à propriété (d'où le return context.value par défaut)Pour connaitre comment accéder par script à une additionnelle ou une propriété, on peut copier son chemin. voir ici Pour comprendre les évènements et le cycle de vie des acteurs, je recommande de consulter ceci : https://witsa.github.io/synapps/concepts/scripts/actor-life-cycle.html Dans le cycle de vie par exemple, il faut savoir qu'on peut avoir accès aux éléments HTML du DOM uniquement à partir de l'évènement onPostInit. En espérant que sa vous aide un peu. |
|
Bonjour Emmanuel, Merci pour tes indications, je ferai des modifications sûr le code pour essayer qu'est que tu as indiqué. Salutations, |
Uh oh!
There was an error while loading. Please reload this page.
Bonjour,
Je m'appelle Marc Padrós, d'Antylop, client de WIT dans la Spagne.
Je suis nouveau sûr Synapps, je voudrais référencier une propieté d'un component "details d'ULI" sûr JavaScript dans un event onClick.
J'avais utilisé le méthode rootScene et après, le méthode getActor pour accéder à l'acteur "details ULI", mais je trouve un erreur "getActor is not defined".
C'est ne pas possible d'accéder directement a la scène actuelle, j'avais fait une essayage avec la propieté "this", mais ça ne marche pas.
Est-ce que vous me pouvez aider à trouver une solution? (je n'avais pas saveguardé images des erreurs).
Merci!
Salutations,
All reactions