react instalar example curso app javascript reactjs animation react-native styled-components

javascript - instalar - react native example



Uso de animaciĆ³n con componentes con estilo(react-native) (1)

Este problema en realidad no está relacionado con los componentes con estilo. Más bien, es uno de reacción nativa

La solución para esto es usar class lugar de un componente sin estado.

class Logo extends React.Component { render () { return ( <SLogoImage source={require(''./geofence.gif'')} {...this.props} /> ) } }

Aquí hay un repositorio github donde está funcionando. Si alguien quiere reproducirlo, simplemente quite el comentario de 14-21 líneas para ver el error.

Creo que el problema viene de Animated tratando de adjuntar ref a un componente sin estado. Y los componentes sin estado no pueden tener referencias .

Estoy experimentando un error que indica siguiente (probado a través de iOS):

No se puede leer la propiedad ''getScrollableNode'' de null

Al intentar usar la herramienta de estilo Animated along labour-components de react-native para reaccionar y reaccionar de forma nativa.

Aquí hay un ejemplo de un componente <Logo /> que creé:

import React from ''react''; import { Image, Dimensions } from ''react-native''; import styled from ''styled-components/native''; const { width } = Dimensions.get(''window''); const logoWidth = width - (width * 0.2); const logoHeight = logoWidth * 0.4516; const SLogoImage = styled(Image)` width: ${logoWidth}; height: ${logoHeight}; `; const Logo = ({ ...rest }) => ( <SLogoImage source={require(''../assets/logo.png'')} {...rest} /> ); export default Logo;

A continuación, importo este componente a una de mis escenas donde quiero aplicarle animación:

import React from ''react''; import { View, Animated } from ''react-native''; import Logo from ''../components/Logo''; const ALogo = Animated.createAnimatedComponent(Logo); class HomeScene extends Component { state = { fadeAnim: new Animated.Value(0) } componentDidMount() { Animated.timing( this.state.fadeAnim, { toValue: 1 } ).start() } render() { <View> <ALogo style={{ opacity: this.state.fadeAnim }} /> </View> } } export default HomeScene;

Y esto da como resultado el error mencionado anteriormente, intenté con Google y no pude encontrar ningún tipo de explicación para lo que es. no dude en solicitar más detalles si es necesario.

Problema relacionado con GitHub: https://github.com/styled-components/styled-components/issues/341