react-use-event-source-ts轻量级SSE Hook

react 项目里的事件流要是想走轻量路线,react-use-event-source-ts这个钩子库还挺合适。它就是个专门Server-Sent Events的小工具,写法清爽,没太多花哨的包装。用的是TypeScript写的,类型也挺稳,日常用来搞后端推送消息再合适不过。

react 的自带状态有时候管不过来,尤其碰上实时数据这种,你又不想用 socket.io 那么重的方案,那 useEventSource 就刚刚好。它只依赖 React 16.8+,也就是 Hooks 之后的版本,基本都能直接上手。

安装也简单,npm i react-use-event-source-ts 就行,你现在得去用它的新地址了,项目现在转到了 @react-nanouse-event-source,别用错了哦~

用起来像这样:

import { useEventSource, useEventSourceListener } from '@react-nanouse-event-source';

const { lastEventId, readyState, data } = useEventSource('/sse');

你甚至还能自己挂监听器,比如想搞点心跳检测自定义消息也都挺方便。

注意一个点,库还在开发中,API 偶尔会有调整,线上用的话还是得多留个心眼。如果你平时用 webpackVite 打包,也不用操心兼容问题,直接支持 es2015 modules

如果你正在用 React 做实时数据展示,比如弹幕系统、后台监控面板之类的场景,可以考虑把它纳入工具箱。轻巧、类型稳,关键是用起来不费脑。

zip 文件大小:49.65KB