/
githubmirror
/
socket.io
Обзор
Документация
Войти
/
githubmirror
/
socket.io
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
examples/expo-example/App.js
52 строки
1 KB
Damien Arrachequesne
docs: update React Native example
05 апр 2024, 20:19
Не верифицирован
05 апр 2024, 20:19
907f102
Код
Авторство
О чём код?
import { StyleSheet, Text, View } from 'react-native'; import { socket } from './socket'; import { useEffect, useState } from 'react'; export default function App() { const [isConnected, setIsConnected] = useState(false); const [transport, setTransport] = useState('N/A'); useEffect(() => { if (socket.connected) { onConnect(); } function onConnect() { setIsConnected(true); setTransport(socket.io.engine.transport.name); socket.io.engine.on('upgrade', (transport) => { setTransport(transport.name); }); } function onDisconnect() { setIsConnected(false); setTransport('N/A'); } socket.on('connect', onConnect); socket.on('disconnect', onDisconnect); return () => { socket.off('connect', onConnect); socket.off('disconnect', onDisconnect); }; }, []); return ( <View style={styles.container}> <Text>Status: { isConnected ? 'connected' : 'disconnected' }</Text> <Text>Transport: { transport }</Text> </View> ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: '#fff', alignItems: 'center', justifyContent: 'center', }, });