@slemsik

Как подключить клиенский js и css к express?

Добрый день! Использую движок express, мне необходимо подключить клиенский js и css
Погуглил, но способ который нашёл тот-же что и сейчас, но почему-то не работает.

Серверный js:
app.use(express.static(__dirname + '/public/css'));

Подключение css:
<link rel="stylesheet" type="text/css" href="css/index.css">

Подключение js:
<script src="js/index.js"></script>

Каталоги:
/public/css/index.css
/public/js/index.js
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
В вопросе вы не указали, что именно не работает, но смею предположить, что указаны неправильные ссылки на статичные файлы.

Во-первых, строкой
app.use(express.static(__dirname + '/public/css'));

Вы открываете доступ только к папке /public/css. Если вы хотите открыть доступ ко всей папке public нужно использовать
app.use(express.static(__dirname + '/public'));

Во-вторых, вы подключаете скрипты и стили без ведущего слеша. Если перейти на внутреннюю страницу сайта, например на /subpath, то браузер будет искать стили в /subpath/css/index.css. Нужно загружать стили и скрипты с ведущим слешем, чтобы они всегда брались из корня:
<link rel="stylesheet" type="text/css" href="/css/index.css">
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы