我正在使用背景關系 API 將套接字 io 客戶端實體委托給其他子組件,一旦我宣告了一個套接字 io 客戶端實體,react app 就會拋出 TypeError:無法分配給物件 '#' 的只讀屬性 'exports'
import { createContext } from 'react';
import { io } from "socket.io-client";
const socket = io("http://localhost:5000"); // < once this line is added, throws error
export const SocketContext = createContext({});
export function SocketProvider(props: any) {
return (
<SocketContext.Provider value={{}}>
{props.children}
</SocketContext.Provider>
)
}
uj5u.com熱心網友回復:
這也發生在我身上。這個問題來自socket.io-client。最好的解決方案是將 socket.io-client 版本降級到 4.3.0: npm install [email protected]
uj5u.com熱心網友回復:
我有同樣的問題,我的問題是由于我的(socket.io-client)版本引起的,我通過將版本降級到 2.1.1 來修復它,它對我有用。
通過此參考https://flaviocopes.com/cannot-assign-readonly-property-export/ 問題在于函式的宣告方式和 (socket.io-client) 的最新版本有一個打字稿,但在我已經降級到沒有打字稿的版本,這就是解決方案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/329298.html
