Не работают стили для pug
В папке server главный файл:
import express from "express";
import cors from "cors";
import indexRoute from "./routes/index.js";
import path from "path";
import { fileURLToPath } from "url";
const app = express();
const PORT = 5000;
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
app.set("views", path.relative(__dirname, "./client/src/views"));
app.use(express.static(path.relative(__dirname, "./client/dist")));
app.set("view engine", "pug");
app.use(cors());
app.use("/", indexRoute);
const run = () => {
app.listen(PORT, () => {
try {
console.log(`server has been started on port ${PORT}`);
} catch (e) {
console.log(`Ошибка при запуске сервера: ${e}`);
}
});
};
run();
index route:
import express from "express";
const router = express.Router();
router.get("/", (req, res) => {
res.render("index", {
title: "HOME PAGE",
content: "DESCRIPTION ABOUT THIS PAGE"
});
});
export default router;
В папке client views index.pug:
extends layouts/default.pug
block title
title #{title}
block body
h1 #{content}
на клиенте используется webpack, поэтому стили хранятся в папке dist.
если эту строчку убрать, то стили применяться не будут, но будут приходить данные с сервера, но если добавить, то приходить данные не будут, но стили применятся:
app.use(express.static(path.relative(__dirname, "./client/dist")));
клиент запускается командой webapp:dev:
"scripts": {
"build": "webpack",
"start": "webpack-dev-server --mode development",
"webapp:dev": "concurrently 'npm:build' 'npm:start'"
}
сервер запускается командой dev:
"scripts": {
"dev": "npx nodemon"
}
