feat: add router to the arm page (#14)

This commit is contained in:
Ильназ 2024-11-09 19:34:12 +03:00
parent 9b3a204657
commit 116e883e91
4 changed files with 24 additions and 26 deletions

View File

@ -3,13 +3,19 @@ import Sidebar from '../Sidebar';
import Orders from '../Orders'; import Orders from '../Orders';
import Masters from '../Masters'; import Masters from '../Masters';
import React from 'react'; import React from 'react';
import { Navigate, Route, Routes } from 'react-router-dom';
const LayoutArm = ({ currentPage, onSelectPage }) => ( const LayoutArm = () => (
<Flex h='100vh'> <Flex h='100vh'>
<Sidebar onSelectPage={onSelectPage} /> <Sidebar />
<Box flex='1' bg='gray.50'> <Box flex='1' bg='gray.50'>
{currentPage === 'orders' && <Orders />} <Routes>
{currentPage === 'masters' && <Masters />} <Route>
<Route index element={<Navigate to='orders' replace />} />
<Route path='orders' element={<Orders />} />
<Route path='masters' element={<Masters />} />
</Route>
</Routes>
</Box> </Box>
</Flex> </Flex>
); );

View File

@ -1,8 +1,8 @@
import { Box, Button, Heading, VStack } from '@chakra-ui/react'; import { Box, Button, Heading, VStack } from '@chakra-ui/react';
import React from 'react'; import React from 'react';
import { Divider } from '@chakra-ui/react'; import { Divider } from '@chakra-ui/react';
import { Link } from 'react-router-dom';
const Sidebar = ({ onSelectPage }) => ( const Sidebar = () => (
<Box <Box
borderRight='1px solid black' borderRight='1px solid black'
bg='gray.50' bg='gray.50'
@ -17,23 +17,17 @@ const Sidebar = ({ onSelectPage }) => (
<VStack align='start' spacing='4'> <VStack align='start' spacing='4'>
<Divider /> <Divider />
<Button <Link to='orders'>
onClick={() => onSelectPage('orders')} <Button w='100%' colorScheme='green' variant='ghost'>
w='100%'
colorScheme='green'
variant='ghost'
>
Заказы Заказы
</Button> </Button>
</Link>
<Divider /> <Divider />
<Button <Link to='masters'>
onClick={() => onSelectPage('masters')} <Button w='100%' colorScheme='green' variant='ghost'>
w='100%'
colorScheme='green'
variant='ghost'
>
Мастера Мастера
</Button> </Button>
</Link>
<Divider /> <Divider />
</VStack> </VStack>
</Box> </Box>

View File

@ -2,9 +2,7 @@ import React, { useState } from 'react';
import LayoutArm from '../../components/LayoutArm'; import LayoutArm from '../../components/LayoutArm';
const Page = () => { const Page = () => {
const [currentPage, setCurrentPage] = useState('orders'); return <LayoutArm />;
return <LayoutArm currentPage={currentPage} onSelectPage={setCurrentPage} />;
}; };
export default Page; export default Page;

View File

@ -9,7 +9,7 @@ const Routers = () => {
<Routes> <Routes>
<Route path='/dry-wash' element={<Landing />}></Route> <Route path='/dry-wash' element={<Landing />}></Route>
<Route path='/dry-wash/order' element={<Order />}></Route> <Route path='/dry-wash/order' element={<Order />}></Route>
<Route path='/dry-wash/arm' element={<Arm />}></Route> <Route path='/dry-wash/arm/*' element={<Arm />}></Route>
</Routes> </Routes>
); );
}; };