-
Notifications
You must be signed in to change notification settings - Fork 0
/
root-cmp.jsx
59 lines (43 loc) · 1.79 KB
/
root-cmp.jsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
const { Route, Routes } = ReactRouterDOM
const Router = ReactRouterDOM.HashRouter
// Base imports
import { Home } from "./views/home.jsx"
import { AppHeader } from "./cmps/app-header.jsx"
import { About } from "./views/about.jsx"
import { UserMsg } from './cmps/user-msg.jsx'
// Mail imports
import { MailIndex } from "./apps/mail/views/mail-index.jsx"
// Note imports
import { NoteIndex } from "./apps/note/views/note-index.jsx"
// Book imports
import { BookIndex } from './apps/book/views/book-index.jsx'
import { BookDetails } from './apps/book/views/book-details.jsx'
import { BookEdit } from './apps/book/views/book-edit.jsx'
export function App() {
function toggleMenu() {
document.body.classList.toggle('menu-open')
}
function toggleMailMenu() {
document.body.classList.toggle('mail-menu-open')
}
return <Router>
<section className="app">
<div className="main-screen" onClick={toggleMenu}></div>
<div className="mail-screen" onClick={toggleMailMenu}></div>
<AppHeader />
<Routes>
<Route path="/" element={<Home />} />
<Route path="/about" element={<About />} />
<Route path="/mail" element={<MailIndex />} />
<Route path="/mail:info" element={<MailIndex />} />
<Route path="/note" element={<NoteIndex />} />
<Route path="/note:info" element={<NoteIndex />} />
<Route path="/book" element={<BookIndex />} />
<Route path="/book/edit" element={<BookEdit />} />
<Route path="/book/edit/:bookId" element={<BookEdit />} />
<Route path="/book/:bookId" element={<BookDetails />} />
</Routes>
</section>
<UserMsg />
</Router>
}