From 441b21ec35578cb644a384ad9f1ea6481d2af459 Mon Sep 17 00:00:00 2001 From: victorAnumudu Date: Fri, 22 Nov 2024 08:28:57 +0100 Subject: [PATCH] resources bug fix --- src/views/OffersInterestPage.jsx | 8 ++++---- src/views/ResourcePage.jsx | 24 ++++++++++++------------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/views/OffersInterestPage.jsx b/src/views/OffersInterestPage.jsx index f3ecdcd..93b4274 100644 --- a/src/views/OffersInterestPage.jsx +++ b/src/views/OffersInterestPage.jsx @@ -1,4 +1,4 @@ -import React, { useContext, useState, useEffect } from "react"; +import React, { useState, useEffect } from "react"; // import BlogItem from "../components/Blogs"; import { useSelector } from "react-redux"; import OffersInterest from "../components/OffersInterest"; @@ -15,7 +15,7 @@ export default function OffersInterestPage() { let {joinRoom} = SocketValues() // function to join room for socket - const apiCall = new usersService() + const apiCall = useMemo(()=>{new usersService()},[]) let {commonHeadBanner} = useSelector(state => state.commonHeadBanner) @@ -28,11 +28,11 @@ export default function OffersInterestPage() { setOfferInterestList({loading: false, data: [], imgServer:''}) console.log('Error: ', err) }) - },[offerInterestListReload]) + },[apiCall, offerInterestListReload]) useEffect(()=>{ joinRoom(`INTEREST-${userDetails?.uid}`) - },[]) + },[joinRoom, userDetails]) return ( <> diff --git a/src/views/ResourcePage.jsx b/src/views/ResourcePage.jsx index 801f2a1..6be0f33 100644 --- a/src/views/ResourcePage.jsx +++ b/src/views/ResourcePage.jsx @@ -1,22 +1,22 @@ -import React, { useState, useEffect } from "react"; +import React, { useCallback, useMemo, useState, useEffect } from "react"; import Resources from "../components/Resources"; import usersService from "../services/UsersService"; import { useLocation } from "react-router-dom"; export default function ResourcePage() { - const {state, pathname} = useLocation() // CHECKS IF THERE IS AN ACTIVE TAB WITH LINK BACK TO RESOURCES + const {state} = useLocation() // CHECKS IF THERE IS AN ACTIVE TAB WITH LINK BACK TO RESOURCES const [MyResourceData, setMyResourceData] = useState([]); - const api = new usersService(); - const getMyResourceData = async () => { - try { - const res = await api.getResourceList(); - setMyResourceData(res.data); - } catch (error) { - throw new Error("Error getting mode"); - } - }; + const api = useMemo(()=>{new usersService()},[]); + const getMyResourceData = useCallback( async () => { + try { + const res = await api.getResourceList(); + setMyResourceData(res.data); + } catch (error) { + throw new Error("Error getting mode"); + } + },[api]) useEffect(() => { getMyResourceData(); - }, []); + }, [getMyResourceData]); return ; } \ No newline at end of file