mirror of
https://github.com/IgnatZakalinsky/home-works.git
synced 2026-02-04 12:32:56 +00:00
hw5
This commit is contained in:
27
src/s2-homeworks/hw05/layout/Layout.tsx
Normal file
27
src/s2-homeworks/hw05/layout/Layout.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
import React, { FC, ReactNode, useEffect, useState } from 'react'
|
||||
import { Header } from '../header/Header'
|
||||
import { Sidebar } from '../sidebar/Sidebar'
|
||||
|
||||
type PropsType = {
|
||||
children: ReactNode
|
||||
}
|
||||
|
||||
export const Layout: FC<PropsType> = ({children}) => {
|
||||
const [open, setOpen] = useState(false)
|
||||
const handleClose = () => setOpen(false)
|
||||
const handleOpen = () => setOpen(true)
|
||||
useEffect(() => {
|
||||
open && (document.body.style.overflow = 'hidden')
|
||||
!open && (document.body.style.overflow = 'unset')
|
||||
}, [open]) //отключает прокрутку при открытом меню
|
||||
|
||||
return (
|
||||
<>
|
||||
<Sidebar open={open} handleClose={handleClose}/>
|
||||
<Header open={open} handleOpen={handleOpen}/>
|
||||
{children}
|
||||
</>
|
||||
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user