Я пытаюсь получить шаблон Pug для рендеринга скрипта с использованием Express.Моя файловая структура выглядит следующим образом:
views
public
index.jade
main.js
index.js
Я попытался передать имя сценария в качестве аргумента res.render('public/index', { bundle: '/main.js' })
, но безуспешно.
Содержимое моего index.js
:
const app = express();
app.set('view engine', 'jade');
app.use(express.static(path.join(__dirname, 'views/public')));
app.use('*', (req, res, next) => {
res.render('public/index', { bundle: '/main.js' });
});
Содержимое моего index.jade
:
doctype html
html
head
title SSR React
body
div#root
script(src='#{bundle}')
Я получаю странную ошибку в консоли.Имя скрипта проходит, но я получаю сообщение об ошибке
Uncaught SyntaxError: Неожиданный токен <</p>
Содержимое main.js
при просмотреКонсоль выглядит следующим образом:
<!DOCTYPE html><html><head><title>SSR React</title></head><body><div id="root"></div><script src="/main.js"></script></body></html>
Итак, просто уменьшенный HTML-код, передаваемый из Pug.
Может кто-нибудь пролить здесь немного света?Я неправильно настраиваю Express?Спасибо.