React中“WebSocket is closed before the connection is established“

在 React 中你需要将它添加到你useEffect的return

js 复制代码
useEffect(() => {
 const socket = new WebSocket(address);


 return () => {
   if (socket.readyState === 1) { // <-- This is important
           socket.close();
      }
   }
}, []);

然而,这不仅仅是最好的解决方案!您需要使用钩子,而不是直接在视图/组件中使用套接字连接,它可以防止多次创建套接字连接。

此外,无论前端是否正在通信,如果套接字连接未使用,后端都应关闭该连接。

相关推荐
我是一只快乐的小螃蟹16 小时前
1.1 HashMap (JDK1.8) 源码解析
前端
爱勇宝19 小时前
小红花成长新版:模板来了,鼓励也更容易开始
前端·后端·程序员
竹林81819 小时前
Solana前端开发:我在一个NFT铸造页面上被@solana/web3.js的Connection和Transaction签名坑了两天
前端
冬奇Lab20 小时前
每日一个开源项目(第144篇):ai-website-cloner-template - 一条命令、多 Agent 并行,把任意网站逆向成 Next.js 代码
前端·人工智能·开源
玄玄子20 小时前
webpack publicPath作用原理
前端·webpack·程序员
HduSy20 小时前
帮 Claude Code 做了个菜单栏 Token 看板,聊聊里面的一些实现逻辑
前端
用户0595401744620 小时前
用了6个月LangChain,才发现AI Agent的记忆存储一直有坑——写了23个Pytest用例才彻底修好
前端·css
奶油mm20 小时前
我偷偷把公司的祖传 jQuery 项目改成了 Vue3,CTO 没发现,但全组都来抄我的代码了
前端
用户21366100357220 小时前
Vue2非父子通信与动态组件
前端·vue.js
PedroQue9920 小时前
Vite插件体系1.0.0:API稳定,生产就绪
前端·vite