Я разработал простой сервер в Node.js, используя Express, и установил папку public для обслуживания статических файлов.
В моем корневом index.js у меня есть следующий код:
const express = require('express');
const app = express();
const http = require('http').Server(app);
const fs = require('fs');
app.use(express.static(__dirname + '/public'));
app.get('/', (req, res) => {
res.sendFile(__dirname + '/public/index.html');
});
http.listen(3000, () => console.info('started server on *:3000'));
И структура каталогов такова:
root
|---index.js
|---package.json
|---public
| |---index.html
| |---cs
| | |---index.css
| |---js
| | |---index.js
В index.html в папке public у меня есть следующий код:
<head>
<script src = "js/index.js"></script>
<link rel = "stylesheet" src = "css/index.css" type = "text/css" >
</head>
Но CSS не отображается. Как я могу это решить?
есть отвечать, я думаю, это может вам помочь
@SudhirBastakoti, переход на href, работал, но в некоторых ответах предлагается перейти на src ... но большое спасибо ..
Возможно, это опечатка, но при редактировании вашего вопроса я заметил, что у вас в структуре каталогов есть папка cs вместо папки css.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Попробуйте изменить это:
app.use(express.static(__dirname + '/public'));
К этому:
app.use(express.static('public'));
Замените атрибут src в теге link на href. Если это не сработает, попробуйте следующее решение.
Я считаю, что ваш сервер работает на http://localhost:3000/
Поэтому обновите URL-адрес в src вашего index.html в общей папке, добавив базовый URL-адрес, как я сделал ниже.
<head>
<script src = "http://localhost:3000/js/index.js"></script>
<link rel = "stylesheet" href = "http://localhost:3000/css/index.css" type = "text/css" >
</head>
я думаю, что теги
linkимеют атрибутыhrefвместоsrc