From a598aa3898874bb95e45ca87d6d0d01741f7fa73 Mon Sep 17 00:00:00 2001 From: victorAnumudu Date: Thu, 10 Aug 2023 12:51:54 +0100 Subject: [PATCH] on cancel, takes user back to my item --- src/components/Resources/index.jsx | 10 +++++++--- src/components/UploadProduct/index.jsx | 3 +++ src/views/ResourcePage.jsx | 4 +++- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/components/Resources/index.jsx b/src/components/Resources/index.jsx index bb6e8cc..6eed60f 100644 --- a/src/components/Resources/index.jsx +++ b/src/components/Resources/index.jsx @@ -77,7 +77,8 @@ export default function Resources(props) { getUploadedFiles(); }, [uploadsTable]); - const [tab, setTab] = useState(tab_categories ? tab_categories[0]?.name : ""); + // const [tab, setTab] = useState(tab_categories ? tab_categories[0]?.name : ""); + const [tab, setTab] = useState(props.activeTab? props.activeTab : tab_categories ? tab_categories[0]?.name : ""); const tabHandler = (value) => { setTab(value); @@ -99,9 +100,12 @@ export default function Resources(props) { activity: , }; - const defaultTabComponent = ; + // const defaultTabComponent = ; - const selectedTabComponent = tabComponents[tab] || defaultTabComponent; + // const selectedTabComponent = tabComponents[tab] || defaultTabComponent; + + const defaultTabComponent = props.activeTab ? tabComponents[props.activeTab] : ; + const selectedTabComponent = tabComponents[tab] || defaultTabComponent; // Tab Item Component const TabItem = ({ tabValue, isActive }) => { diff --git a/src/components/UploadProduct/index.jsx b/src/components/UploadProduct/index.jsx index 25a5a80..1e8d468 100644 --- a/src/components/UploadProduct/index.jsx +++ b/src/components/UploadProduct/index.jsx @@ -7,10 +7,12 @@ import Layout from "../Partials/Layout"; import ProductUploadField from "./ProductUploadField"; import LoadingSpinner from "../Spinners/LoadingSpinner"; import usersService from "../../services/UsersService"; +import { useNavigate } from "react-router-dom"; export default function UploadProduct({uploadTypes}) { const apiCall = new usersService() const [requestStatus, setRequestStatus] = useState({loading: false, status: null, message: ''}) // DETERMINES THE STATUS OF UPLOAD + const navigate = useNavigate() // preview modal const [previewProductModal, setPreviewProductModal] = useState(false); @@ -246,6 +248,7 @@ export default function UploadProduct({uploadTypes}) { setPurchase(false); cancelUploadModalHandler(); setImg(null); + navigate('/resources', {state:{tab:'created'}}) }; return ( <> diff --git a/src/views/ResourcePage.jsx b/src/views/ResourcePage.jsx index a6dd647..00d08ce 100644 --- a/src/views/ResourcePage.jsx +++ b/src/views/ResourcePage.jsx @@ -1,7 +1,9 @@ import React, { 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 [MyResourceData, setMyResourceData] = useState([]); const api = new usersService(); @@ -17,5 +19,5 @@ export default function ResourcePage() { getMyResourceData(); }, []); - return ; + return ; } \ No newline at end of file -- 2.34.1