Quelle est la meilleure pratique pour déclencher un événement à la fin de Animated.spring?
Animated.spring(this.state.pan, {
toValue: 0
}).start()
J'ai cherché pas mal de choses et je n'ai trouvé aucun moyen de le faire. Je pourrais utiliser addListener pour vérifier si l'animation a atteint sa valeur finale ou un délai d'attente, mais ils se sentent tous deux comme des correctifs laids à ce qui devrait être super simple.
Est-ce que quelqu'un sait?
Une demi-heure de recherches sur Google plus tard et j'ai trouvé cela, je ne peux pas croire qu'ils ne l'ont pas documenté mieux.
https://github.com/facebook/react-native/issues/3212
.start(callback)
Cela sera renvoyé au début de l'animation
.start(console.log("Start Animation")
En utilisant une fonction de flèche ou une fonction, done sera appelé auENDde l'animation
.start(() => {console.log("Animation DONE")})
Et finalement, voici à quoi cela ressemble dans le contexte d’une fonction.
_play(){
Animated.timing(this.state.progress, {
toValue: 1,
duration: 5000,
easing: Easing.linear,
}).start(() => {console.log("Animation DONE")});
}
J'espère que cela pourra aider!