Saltar al contenido

¿Cómo verificar la información de red en React Native iOS?

Te damos la bienvenida a nuestro sitio web, en este sitio hallarás la resolución a lo que buscas.

Solución:

Actualmente hay un problema abierto sobre esto en el github de react native.

Puede ver la discusión allí, pero en resumen: el fetch siempre está regresando falsepero puede evitarlo escuchando el evento de cambio de conexión.

Ejemplo de código de allí:

componentDidMount() 
    NetInfo.isConnected.addEventListener('change', this.handleConnectionChange);

    NetInfo.isConnected.fetch().done(
      (isConnected) =>  this.setState( status: isConnected ); 
    );


componentWillUnmount() 
    NetInfo.isConnected.removeEventListener('change', this.handleConnectionChange);


handleConnectionChange = (isConnected) => 
        this.setState( status: isConnected );
        console.log(`is connected: $this.state.status`);

Editar:

Parece que se ha trabajado en este problema. También, change evento fue renombrado a connectionChange. Código de solución actualizado:

componentDidMount() 
    NetInfo.isConnected.addEventListener('connectionChange', this.handleConnectionChange);

    NetInfo.isConnected.fetch().done(
      (isConnected) =>  this.setState( status: isConnected ); 
    );


componentWillUnmount() 
    NetInfo.isConnected.removeEventListener('connectionChange', this.handleConnectionChange);


handleConnectionChange = (isConnected) => 
        this.setState( status: isConnected );
        console.log(`is connected: $this.state.status`);

Actualizado:

los change el tipo de evento está en desuso. Considere usar el connectionChange tipo de evento.

Si para ti ha resultado de ayuda este artículo, agradeceríamos que lo compartas con el resto desarrolladores de este modo contrubuyes a difundir nuestra información.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *