Skip to content

bndby/use-server-sent-event

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

useServerSentEvent

English

React хук для работы с Server-Sent Events (SSE).

Установка

npm install use-server-sent-event

Использование

import { useServerSentEvent } from 'use-server-sent-event';

function MyComponent() {
  const { data, error, isConnected } = useServerSentEvent<MyDataType>(
    'http://localhost:3000/events',
    initialData
  );

  if (error) {
    return <div>Ошибка: {error.message}</div>;
  }

  return (
    <div>
      <p>Статус: {isConnected ? 'Подключено' : 'Отключено'}</p>
      <p>Данные: {JSON.stringify(data)}</p>
    </div>
  );
}

API

useServerSentEvent<T>(url, initialState?)

  • url - URL для подключения к SSE endpoint
  • initialState - Начальное состояние данных (опционально)

Возвращаемые значения

  • data - Текущие данные от сервера
  • error - Ошибка подключения (если есть)
  • isConnected - Статус подключения (boolean)

Демонстрация

В папке src/example находится полная демонстрация работы хука:

Быстрый запуск

cd src/example
bun server.js

Затем откройте в браузере:

Файлы демонстрации

  • server.js - Сервер с SSE endpoint
  • client-simple.tsx - React приложение с упрощенной версией хука
  • react-demo.html - HTML файл для запуска демонстрации
  • start.sh - Скрипт для запуска сервера

Подробная документация в src/example/README.md.

Особенности

  • Автоматическое подключение/отключение
  • Обработка ошибок
  • TypeScript поддержка
  • SSR совместимость
  • Оптимизированная производительность

About

A hook for using server-sent events in React

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published