mirror of
https://git.rezel.net/LudoTech/traque.git
synced 2026-02-09 10:20:16 +01:00
wrapped context vlaues with usememo
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
"use client";
|
"use client";
|
||||||
import { createContext, useContext, useState } from "react";
|
import { createContext, useContext, useMemo, useState } from "react";
|
||||||
import { useSocket } from "./socketContext";
|
import { useSocket } from "./socketContext";
|
||||||
import { useSocketListener } from "@/hook/useSocketListener";
|
import { useSocketListener } from "@/hook/useSocketListener";
|
||||||
|
|
||||||
@@ -14,8 +14,10 @@ const AdminConnexionProvider = ({ children }) => {
|
|||||||
|
|
||||||
useSocketListener(adminSocket, "login_response", setLoggedIn);
|
useSocketListener(adminSocket, "login_response", setLoggedIn);
|
||||||
|
|
||||||
|
const value = useMemo(() => ({ login, loggedIn }), [loggedIn]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<adminContext.Provider value={{ login, loggedIn }}>
|
<adminContext.Provider value={value}>
|
||||||
{children}
|
{children}
|
||||||
</adminContext.Provider>
|
</adminContext.Provider>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
"use client";
|
"use client";
|
||||||
import { createContext, useContext, useEffect, useState } from "react";
|
import { createContext, useContext, useEffect, useMemo, useState } from "react";
|
||||||
import { useSocket } from "./socketContext";
|
import { useSocket } from "./socketContext";
|
||||||
import { useSocketListener } from "@/hook/useSocketListener";
|
import { useSocketListener } from "@/hook/useSocketListener";
|
||||||
import { useAdminConnexion } from "./adminConnexionContext";
|
import { useAdminConnexion } from "./adminConnexionContext";
|
||||||
@@ -21,8 +21,9 @@ function AdminProvider({children}) {
|
|||||||
useSocketListener(adminSocket, "teams", setTeams);
|
useSocketListener(adminSocket, "teams", setTeams);
|
||||||
useSocketListener(adminSocket, "game_started", setStarted);
|
useSocketListener(adminSocket, "game_started", setStarted);
|
||||||
|
|
||||||
|
const value = useMemo(() => ({teams, setTeams, started, setStarted}), [teams, started]);
|
||||||
return (
|
return (
|
||||||
<adminContext.Provider value={{teams, setTeams, started, setStarted}}>
|
<adminContext.Provider value={value}>
|
||||||
{children}
|
{children}
|
||||||
</adminContext.Provider>
|
</adminContext.Provider>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
"use client";
|
"use client";
|
||||||
import { createContext, useContext } from "react";
|
import { createContext, useContext, useMemo } from "react";
|
||||||
|
|
||||||
const { io } = require("socket.io-client");
|
const { io } = require("socket.io-client");
|
||||||
|
|
||||||
@@ -12,8 +12,9 @@ export const adminSocket = io(ADMIN_SOCKET_URL);
|
|||||||
export const SocketContext = createContext();
|
export const SocketContext = createContext();
|
||||||
|
|
||||||
export default function SocketProvider({ children }) {
|
export default function SocketProvider({ children }) {
|
||||||
|
const value = useMemo(() => ({ teamSocket, adminSocket }), [teamSocket, adminSocket]);
|
||||||
return (
|
return (
|
||||||
<SocketContext.Provider value={{teamSocket, adminSocket}}>{children}</SocketContext.Provider>
|
<SocketContext.Provider value={value}>{children}</SocketContext.Provider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
"use client";
|
"use client";
|
||||||
import { createContext, useContext, useState } from "react";
|
import { createContext, useContext, useMemo, useState } from "react";
|
||||||
import { useSocket } from "./socketContext";
|
import { useSocket } from "./socketContext";
|
||||||
import { useSocketListener } from "@/hook/useSocketListener";
|
import { useSocketListener } from "@/hook/useSocketListener";
|
||||||
|
|
||||||
@@ -16,8 +16,10 @@ const TeamConnexionProvider = ({ children }) => {
|
|||||||
|
|
||||||
useSocketListener(teamSocket, "login_response", setLoggedIn);
|
useSocketListener(teamSocket, "login_response", setLoggedIn);
|
||||||
|
|
||||||
|
const value = useMemo(() => ({ teamId, login, loggedIn }), [teamId, login, loggedIn]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<teamConnexionContext.Provider value={{ teamId, login, loggedIn }}>
|
<teamConnexionContext.Provider value={value}>
|
||||||
{children}
|
{children}
|
||||||
</teamConnexionContext.Provider>
|
</teamConnexionContext.Provider>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
"use client";
|
"use client";
|
||||||
import { useLocation } from "@/hook/useLocation";
|
import { useLocation } from "@/hook/useLocation";
|
||||||
import { useSocketListener } from "@/hook/useSocketListener";
|
import { useSocketListener } from "@/hook/useSocketListener";
|
||||||
import { createContext, useContext, useEffect, useState } from "react";
|
import { createContext, useContext, useEffect, useMemo, useState } from "react";
|
||||||
import { useSocket } from "./socketContext";
|
import { useSocket } from "./socketContext";
|
||||||
import { useTeamConnexion } from "./teamConnexionContext";
|
import { useTeamConnexion } from "./teamConnexionContext";
|
||||||
|
|
||||||
@@ -22,8 +22,9 @@ function TeamProvider({children}) {
|
|||||||
}
|
}
|
||||||
}, [loggedIn, currentPosition]);
|
}, [loggedIn, currentPosition]);
|
||||||
|
|
||||||
|
const value = useMemo(() => ({enemyPosition, currentPosition}), [enemyPosition, currentPosition]);
|
||||||
return (
|
return (
|
||||||
<teamContext.Provider value={{enemyPosition, currentPosition}}>
|
<teamContext.Provider value={value}>
|
||||||
{children}
|
{children}
|
||||||
</teamContext.Provider>
|
</teamContext.Provider>
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user