Skip to content

Commit fd4a7fa

Browse files
author
Samuel Adebayo
authored
Samuel workflow: Navbar Component Created (#9)
* navbar component created * navbar test written
1 parent 45ace8e commit fd4a7fa

File tree

8 files changed

+411
-12
lines changed

8 files changed

+411
-12
lines changed

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616

1717
## COntribution
1818

19-
2019
## Acknowlegdement
2120

2221
## LICENSE

src/App.jsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
import React from 'react';
22
import './App.scss';
3+
import { Button } from 'reactstrap';
4+
import NavBarComponent from './components/navbar/navbar.jsx';
35

46
function App() {
57
return (
68
<div className="app">
9+
<NavBarComponent />
710
<header className="app">
811
<p>What he Do??</p>
912
</header>
@@ -14,6 +17,8 @@ function App() {
1417
rel="noopener noreferrer">
1518
Learn React
1619
</a>
20+
21+
<Button color="danger">Danger!</Button>
1722
</div>
1823
);
1924
}

src/App.scss

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
@import url('https://fonts.googleapis.com/css?family=Montserrat');
22
@import url('https://fonts.googleapis.com/css?family=Lato&display=swap');
3-
43
@import './variables';
54

65
.app {
7-
background-color: $background;
8-
color: $primary-color;
9-
min-width: 100vw;
10-
min-height: 100vh;
11-
padding: 4rem 2rem;
6+
background-color: $background-color;
7+
color: $primary-text-color;
128
}
139

1410
* {
15-
font-family: Montserrat;
11+
margin: 0;
12+
padding: 0;
13+
box-sizing: border-box;
14+
font-family: Montserrat, sans-serif;
1615
}

src/_variables.scss

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
$background: #c4c4c4;
1+
$background-color: #fff;
2+
$primary-text-color: #000;
3+
$secondary-text-color: #fff;
24
$primary-color: #ff4133;
3-
$primary-text-color: #121317;
45
$secondary-color: #95969f;
5-
$navbar-height: 70px;
6-
$navbar-height-mobile: 90px;
6+

src/components/navbar/navbar.jsx

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import React, { Fragment } from 'react';
2+
import './navbar.scss';
3+
4+
class NavBarComponent extends React.Component {
5+
constructor(props) {
6+
super(props);
7+
this.state = {isNavOpen: false};
8+
this.handleNav = this.handleNav.bind(this);
9+
}
10+
11+
handleNav() {
12+
this.setState(state => ({
13+
isNavOpen: !state.isNavOpen
14+
}));
15+
}
16+
17+
// eslint-disable-next-line class-methods-use-this
18+
render() {
19+
const MenuActive = this.state.isNavOpen? '': 'is-active';
20+
const MenuOpen = this.state.isNavOpen? '': 'mobile-nav';
21+
return (
22+
<Fragment>
23+
<div className="page-wrapper">
24+
<div className="nav-wrapper">
25+
<div className="grad-bar"></div>
26+
<nav className="navbar">
27+
<img src="https://upload.wikimedia.org/wikipedia/en/thumb/c/c8/Bluestar_%28bus_company%29_logo.svg/1280px-Bluestar_%28bus_company%29_logo.svg.png" alt="Company Logo"/>
28+
<div className={`menu-toggle ${MenuActive}`} id="mobile-menu" onClick={this.handleNav}> {/** add class is-active */}
29+
<span className="bar"></span>
30+
<span className="bar"></span>
31+
<span className="bar"></span>
32+
</div>
33+
<ul className={`nav no-search ${MenuOpen}`}> {/** add class mobile-nav */}
34+
<li className="nav-item"><a href="https://reactjs.org">Home</a></li>
35+
<li className="nav-item"><a href="https://reactjs.org">About</a></li>
36+
<li className="nav-item"><a href="https://reactjs.org">Work</a></li>
37+
<li className="nav-item"><a href="https://reactjs.org">Careers</a></li>
38+
<li className="nav-item"><a href="https://reactjs.org">Contact Us</a></li>
39+
{/* <i className="fas fa-search" id="search-icon"></i>
40+
<input className="search-input" type="text" placeholder="Search.."> */}
41+
</ul>
42+
</nav>
43+
</div>
44+
</div>
45+
</Fragment>
46+
)
47+
}
48+
}
49+
50+
export default NavBarComponent;

0 commit comments

Comments
 (0)