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
55import express from "express";
import path from "path";
const viewsRouter = express.Router();
// νμ΄μ§λ³λ‘ html, css, js νμΌλ€μ λΌμ°ν
ν¨
// μλμ κ°μ΄ νλ©΄, http://localhost:5000/ μμλ views/home/home.html νμΌμ,
// http://localhost:5000/register μμλ views/register/register.html νμΌμ νλ©΄μ λμ
viewsRouter.use("/", serveStatic("home"));
viewsRouter.use("/register", serveStatic("register"));
viewsRouter.use("/login", serveStatic("login"));
viewsRouter.use("/account", serveStatic("account"));
viewsRouter.use("/account/orders", serveStatic("account/orders", "orders"));
viewsRouter.use(
"/account/security",
serveStatic("account/security", "security")
);
viewsRouter.use("/account/signout", serveStatic("account/signout", "signout"));
viewsRouter.use("/product/add", serveStatic("product/add", "product-add"));
viewsRouter.use("/product/list", serveStatic("product/list", "product-list"));
viewsRouter.use(
"/product/detail",
serveStatic("product/detail", "product-detail")
);
viewsRouter.use("/cart", serveStatic("cart"));
viewsRouter.use("/order", serveStatic("order"));
viewsRouter.use(
"/order/complete",
serveStatic("order/complete", "order-complete")
);
viewsRouter.use("/admin", serveStatic("admin"));
viewsRouter.use("/admin/users", serveStatic("admin/users", "users"));
viewsRouter.use("/admin/orders", serveStatic("admin/orders", "admin-orders"));
viewsRouter.use("/category/add", serveStatic("category/add", "category-add"));
viewsRouter.use("/product/edit", serveStatic("product/edit", "product-edit"));
viewsRouter.use(
"/category/edit",
serveStatic("category/edit", "category-edit")
);
// views ν΄λμ μ΅μλ¨ νμΌμΈ rabbit.png, api.js λ±μ μΈ μ μκ² ν¨
viewsRouter.use("/", serveStatic(""));
// viewsν΄λ λ΄μ ${resource} ν΄λ λ΄μ λͺ¨λ νμΌμ μΉμ λμ°λ©°,
// μ΄ λ ${resource}.html μ κΈ°λ³Έ νμΌλ‘ μ€μ ν¨.
function serveStatic(resource, fileName = resource) {
const resourcePath = path.join(__dirname, `../views/${resource}`);
const option = { index: `${fileName}.html` };
// express.static μ express κ° κΈ°λ³ΈμΌλ‘ μ 곡νλ ν¨μμ
return express.static(resourcePath, option);
}
export { viewsRouter };