Я попробовал это простое изменение из начального числа и создал соответствующие файлы .html (например, index.html).
//app.set('view engine', 'jade');
app.set('view engine', 'html');
и этот файл остался прежним:
exports.index = function(req, res){
res.render('index');
};
но во время бега я получаю
Ошибка 500: не удается найти модуль "html"
Единственный ли мой вариант - использовать ejs? Я намеревался использовать простой HTML вместе с AngularJS.
Ответы:
Ответы по другой ссылке будут работать, но для обслуживания HTML нет необходимости использовать механизм просмотра, если вы не хотите настроить фанковую маршрутизацию. Вместо этого просто используйте статическое промежуточное ПО:
источник
res.render()
будет работать. Вместо этого поместите свои необработанные HTML-файлыpublic
и позвольте статическому промежуточному программному обеспечению работать с файлами напрямую. Если вам нужны более интересные маршруты, чем этот, вы, вероятно, можете настроить свой собственный механизм просмотра HTML.Чтобы заставить движок рендеринга принимать html вместо jade, вы можете выполнить следующие шаги;
Установите Consolidate и перейдите в свой каталог.
добавьте следующие строки в файл app.js
добавьте свои шаблоны представлений как .html в папку «views». Перезагрузите сервер узла и запустите приложение в браузере.
Хотя это будет отображать HTML без каких-либо проблем, я бы порекомендовал вам использовать JADE, изучив его. Jade - потрясающий шаблонизатор, изучение которого поможет вам добиться лучшего дизайна и масштабируемости.
источник
В вашем apps.js просто добавьте
Теперь вы можете использовать движок просмотра ejs, сохраняя файлы просмотра в виде .html.
источник: http://www.makebetterthings.com/node-js/how-to-use-html-with-express-node-js/
Вам необходимо установить эти два пакета:
А затем импортируйте необходимые пакеты:
Таким образом вы можете сохранять свои представления как .html вместо .ejs .
Очень полезно при работе с IDE, которые поддерживают html, но не распознают ejs.
источник
попробуйте это для конфигурации вашего сервера
тогда ваши функции обратного вызова для маршрутов будут выглядеть так:
источник
Никакого механизма просмотра не требуется, если вы хотите использовать angular с простым обычным файлом html. Вот как это сделать: В вашем
route.js
файле:источник
Я рекомендую использовать https://www.npmjs.com/package/express-es6-template-engine - чрезвычайно легкий и невероятно быстрый шаблонизатор. Название немного вводит в заблуждение, так как оно может работать и без expressjs.
Основы, необходимые для интеграции
express-es6-template-engine
в ваше приложение, довольно просты и их довольно легко реализовать:index.html
файла, расположенного внутри вашего каталога 'views':источник
Ответ очень простой. Вы должны использовать app.engine ('html') для отображения * .html страниц. попробуйте это. Это должно решить проблему.
файл .html будет работать
источник
HTML-файлы можно обрабатывать с помощью движка ejs:
И убедитесь, что ваши файлы в «/ views» названы с расширением «.ejs».
Например, index.ejs.
источник
Закомментируйте промежуточное ПО для html ie
Вместо этого используйте:
источник
html не является механизмом просмотра, но ejs предлагает возможность писать в нем код HTML.
источник
на серверные html-страницы через маршрутизацию, я сделал это.
и переименовал мои файлы .html в файлы .hbs - руль поддерживает простой html
источник
Чтобы заставить движок рендеринга принимать html вместо jade, вы можете выполнить следующие шаги;
Это должно работать
источник
Попробуйте это простое решение, оно сработало для меня
источник
Установить шаблон ejs
npm install ejs --save
Ссылайтесь на ejs в app.js
Создайте шаблон ejs в таких представлениях, как views / indes.ejs, и используйте ejs tempalte в маршрутизаторе.
источник
Визуализировать html-шаблон с помощью swig.
источник
Файлы Html не нужно обрабатывать.
механизм рендеринга превращает файл, не являющийся файлом Html, в файл Html.
чтобы отправить файл Html, просто выполните:
вам может потребоваться использовать,
__dirname+"/index.html"
чтобы express знал точный путь.источник