# blockspare/3.1.4/admin/layout/Layout.js

BlockSpare – Gutenberg Blocks for News, Magazine, Blog &amp; Business Websites, version 3.1.4. 40 lines.

- Page: https://pluginprobe.com/plugins/blockspare/3.1.4/code/admin/layout/Layout.js
- Raw: https://pluginprobe.com/plugins/blockspare/3.1.4/raw/admin/layout/Layout.js
- Modified: 2024-03-26T14:27:04+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/blockspare/3.1.4/code/admin/layout/Layout.js#L10-L20`.

```javascript
import React, { useState, useEffect } from 'react'
import Home from '../pages/Home'
import Designs from '../pages/demo/Designs'
import Header from '../components/Header'
import Container from '../components/Container'

const Layout = () => {
    const [current, setCurrent] = useState(0)
    const activeNavHandler = (activeNavItem) => {
        sessionStorage.setItem('main-nav', activeNavItem);
        setCurrent(activeNavItem);
    };
    useEffect(() => {
        sessionStorage.removeItem('main-nav')
        const active = sessionStorage.getItem('main-nav');
        if (active) {
            setCurrent(+active)
        }
    }, [])
    const content = [

        <Designs />,
        <Home />


    ]
    return (
        <>
            <Header current={current} activeNavHandler={activeNavHandler} />
            <main>
                <Container>
                    {content[current]}
                </Container>
            </main>
        </>
    )
}

export default Layout

```
