Skip to content

Commit 8037262

Browse files
refactor: 💡 add basic exmaple
1 parent 61f7e96 commit 8037262

File tree

3 files changed

+81
-1
lines changed

3 files changed

+81
-1
lines changed

‎examples/cra/src/App.js‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import React from "react";
22
import ThreePanels from "./ThreePanels/index.js";
3-
3+
import Basic from "./Basic";
44
function App() {
55
return (
66
<div>
7+
<Basic />
78
<ThreePanels />
89
</div>
910
);
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
.wrapper {
2+
width: 400px;
3+
background: #fff;
4+
padding: 20px;
5+
}
6+
.menu-item {
7+
margin-bottom: 20px;
8+
}
9+
.dropdown {
10+
cursor: pointer;
11+
margin-bottom: 20px;
12+
}
13+
.dropdown-item {
14+
padding: 10px;
15+
margin-top: 20px;
16+
background: #e2e2e2;
17+
}
18+
.logo {
19+
padding-bottom: 10px;
20+
margin-bottom: 20px;
21+
border-bottom: 1px solid #e2e2e2;
22+
width: 200px;
23+
}
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
import React, { useState } from "react";
2+
import ReactOffcanvasComponent from "react-offcanvas-component";
3+
import "./Basic.css";
4+
import { FaTimes } from "react-icons/fa";
5+
6+
const { Menu, DropdownMenu, CloseButton } = ReactOffcanvasComponent;
7+
8+
const MenuItem = Menu.Item;
9+
10+
function Basic() {
11+
const [visibility, setVisibility] = useState(false);
12+
13+
const handleClick = () => {
14+
setVisibility(visibility => !visibility);
15+
};
16+
17+
const openAnimation = {
18+
x: 0,
19+
transition: {
20+
duration: 200
21+
}
22+
};
23+
24+
return (
25+
<div>
26+
<button className="button" onClick={handleClick}>
27+
{!visibility ? "Basic" : "Close basic"}
28+
</button>
29+
<ReactOffcanvasComponent
30+
className="wrapper"
31+
open={visibility}
32+
openAnimation={openAnimation}
33+
>
34+
<CloseButton onClick={handleClick} style={{ right: 10 }}>
35+
<FaTimes />
36+
</CloseButton>
37+
<div className="logo">ROC</div>
38+
<Menu>
39+
<MenuItem className="menu-item">Home</MenuItem>
40+
<MenuItem className="menu-item">Another Menu Item</MenuItem>
41+
<MenuItem hasDropdown name="dropdown-b" className="dropdown">
42+
Dropdown
43+
<DropdownMenu>
44+
<MenuItem className="dropdown-item">Abc</MenuItem>
45+
<MenuItem className="dropdown-item">Abc</MenuItem>
46+
<MenuItem className="dropdown-item">Abc</MenuItem>
47+
</DropdownMenu>
48+
</MenuItem>
49+
<MenuItem className="menu-item">Is n't it awesome</MenuItem>
50+
</Menu>
51+
</ReactOffcanvasComponent>
52+
</div>
53+
);
54+
}
55+
56+
export default Basic;

0 commit comments

Comments
 (0)