Экспресс-генератор без нефрита
Я пытаюсь создать экспресс-скелет, используя экспресс-генератор.
Так оно и будет:
$ npm install express-generator -g
Однако он добавляет кучу автоматических нефритовых файлов.
Мне было интересно, есть ли способ избавиться от этих нефритовых файлов и просто использовать html с экспресс-генератором
Спасибо!
Ответы
Ответ 1
Попробуйте запустить эту команду в командной строке:
express --help
Это даст вам помощь экспресс-генератора:
Usage: express [options] [dir]
Options:
-h, --help output usage information
--version output the version number
-e, --ejs add ejs engine support
--hbs add handlebars engine support
--pug add pug engine support
-H, --hogan add hogan.js engine support
--no-view generate without view engine
-v, --view <engine> add view <engine> support (ejs|hbs|hjs|jade|pug|twig|vash) (defaults to jade)
-c, --css <engine> add stylesheet <engine> support (less|stylus|compass|sass) (defaults to plain css)
--git add .gitignore
-f, --force force on non-empty directory
⚡ Источник: https://expressjs.com/en/starter/generator.html.
Вышеуказанные параметры дают вам список "просмотр двигателей".
Теперь просто введите:
экспресс - {ваш выбор просмотра двигателя}
Например, используя express -e
:
Это устанавливает EJS движок как ваш обработчик вида и удаляет нефрит. EJS имеет внешний вид HTML с добавленной возможностью вводить значения через их систему шаблонов.
Ответ 2
Вы можете проверить документацию Express-Generator.
Как вы можете видеть с помощью выражения -h, движок представления, поддерживаемый экспресс-генератором,
(ejs | hbs | hjs | jade | pug | twig | vash), но через deafult jade поддерживается.
$express -h
Использование: express [options] [dir]
Параметры:
-h, --help output usage information
--version output the version number
-e, --ejs add ejs engine support
--hbs add handlebars engine support
--pug add pug engine support
-H, --hogan add hogan.js engine support
-v, --view <engine> add view <engine> support (ejs|hbs|hjs|jade|pug|twig|vash) (defaults to jade)
-c, --css <engine> add stylesheet <engine> support (less|stylus|compass|sass) (defaults to plain css)
--git add .gitignore
-f, --force force on non-empty directory
Ответ 3
Вы можете просто удалить нефритовые файлы и подключить свой собственный механизм шаблонов.
Например, мне нравится использовать Handlebars.js. Поэтому, чтобы использовать это, в app.js
или server.js
или независимо от того, какой генератор называет основной файл, вы должны подставить строку:
app.set('view engine', 'jade');
с чем-то рядом с этим (после установки и использования рулей, по крайней мере):
app.engine('handlebars', exphbs({defaultLayout: 'main'}));
app.set('view engine', 'handlebars');
И каждый движок настраивается так, как вы хотите.
Ответ 4
Этот генератор, похоже, обрабатывает шаблоны EJS. EJS - это просто HTML с возможностью вставки переменных. Ну... Как шаблонный двигатель.
Но EJS также является механизмом рендеринга для HTML.
В app.js генератора вы можете увидеть эту строку (15):
app.set('view engine', '{views}');
Итак, я предполагаю, что если вы установите EJS-движок при установке, это будет хорошо. Пока вы помещаете свои html файлы в указанную папку (строка 14, app.js):
app.set('views', path.join(__dirname, 'views'));
Ответ 5
Вы также можете напрямую включить свой html файл в свой нефритовый файл
include ../../public/index.html