javascript - Cómo obtener el valor de AnimatedInterpolation
Mi pregunta es cómo recuperar el valor de un AnimatedInterpolation en react-native, sin llamar a código privado.
Creo el valor animado y lo envuelvo en una interpolación así:
animated = new Animated.Value();
interpolated = this.animated.interpolate({
inputRange:[0, 1000],
outputRange:[0, 500]
})
Yo renderizo la animación así:
<Animated.View style={[{width: this.interpolated}]}/>
Y recupero el valor animado así:
this.animated.stopAnimation(v => {
console.log(v, " ", this.interpolated.__getValue());
})
Ejemplo ejecutable aquí.
Mi problema es que __getValue() es un miembro privado de AnimatedInterpolation y da un error al usar TypeScript. Estoy buscando una forma segura de obtener el valor, de manera similar a cómo this.animated.stopAnimation es más seguro que this.animated.__getValue().
Respuesta #1
Puedes añadir un oyente a interpolated para obtener el valor -
interpolated.addListener(({value}) => {
console.log('interpolated', value)
});
Luego puedes usarlo con variables o con cualquier cosa.
