这是构成部分:
import React, { useEffect } from "react";
import { useStore } from "../zustand/store";
import shallow from "zustand/shallow";
import Grid from "@mui/material/Grid";
export const JoinChat = () => {
const [userCount, setUserCount] = useStore(
(state) => [state.userCount, state.setUserCount],
shallow
);
const setChat = useStore((state) => state.setChat);
const socket = useStore((state) => state.socket);
useEffect(() => {
socket.on("user_count", (data) => {
console.log("user count run in join chat");
setUserCount(data);
});
}, [socket, setUserCount]);
const joinChat = async () => {
if ("geolocation" in navigator) {
await navigator.geolocation.getCurrentPosition(async (pos) => {
const location = {
x: pos.coords.longitude,
y: pos.coords.latitude,
};
await socket.emit("create_chat", location);
setChat(true);
});
} else {
alert("You location is not available");
}
};
return (
<Grid>
<div>
{userCount ? <p>People online {userCount}</p> : null}
<button onClick={joinChat}>Join chat</button>
</div>
</Grid>
);
};当我使用网格包装div时,控制台中会出现以下错误:这里
如果我去掉了资料用户界面组件,它就会呈现得很好,没有警告或错误。
发布于 2022-09-05 10:04:02
在开发React18 + Vite (不是cra的乐趣)时,我遇到了同样的错误。
我通过清除vite缓存来修复这个问题,比如so npx vite --force (我使用pnpm,所以我的实际命令是pnpx vite --force)。
下面是我如何创建我的react18项目:pnpm create vite my-react-app --template react-ts
https://stackoverflow.com/questions/72472691
复制相似问题