From 488c4ed02814f35ba33bfd4bd23fa6968717c53b Mon Sep 17 00:00:00 2001 From: Eug-VS Date: Tue, 31 Dec 2019 21:52:45 +0300 Subject: Create page state and pass it to Header --- src/components/Header.js | 21 ++++++++++++++------- src/index.js | 28 +++++++++++++++++++--------- 2 files changed, 33 insertions(+), 16 deletions(-) (limited to 'src') diff --git a/src/components/Header.js b/src/components/Header.js index cd217fc..cca73ed 100644 --- a/src/components/Header.js +++ b/src/components/Header.js @@ -7,17 +7,24 @@ import { } from "@material-ui/core"; import styled from 'styled-components'; -const Header = () => ( +const Header = ({ setPage }) => { + + const handleChange = (event, newPage) => { + setPage(newPage); + }; + + return ( - + - - - - + + + + -); + ); +}; const TabsWrapper = styled(Tabs)` border-bottom: 1px solid black; diff --git a/src/index.js b/src/index.js index 512d416..bf09082 100644 --- a/src/index.js +++ b/src/index.js @@ -1,4 +1,4 @@ -import React from 'react'; +import React, { useState } from 'react'; import ReactDOM from 'react-dom'; import styled from 'styled-components'; @@ -7,16 +7,26 @@ import CssBaseline from '@material-ui/core/CssBaseline' import Header from "./components/Header"; -const App = () => ( - - -
-

Page content here

- -); +const App = () => { + + const [page, setPage] = useState('home'); + + return ( + + +
+

This is the {page} page!

+

+ This text is rendered outside of Header component, but + interacting with Header can influence content of this page! +

+ + ); +}; const Root = styled.div` - background: lightgrey; + background: cornsilk; + padding-bottom: 25px; `; -- cgit v1.2.3