Использование экспресса без шаблонного движка - PullRequest
9 голосов
/ 06 сентября 2011

Можно ли создать экспресс-приложение (узел) без необходимости использования механизма шаблонов, такого как jade или ejs. У меня большой последний проект в университете, и я собираюсь использовать node, express, socket.io, mongoDB и websockets. Я не хочу обременять себя необходимостью изучать язык шаблонов!

По умолчанию в экспрессе используется нефрит -t, --template добавить поддержку шаблона (jade | ejs). по умолчанию = нефрит

Ответы [ 4 ]

14 голосов
/ 06 сентября 2011

Можно ли создать экспресс-приложение (узел) без необходимости использования механизма шаблонов, такого как jade или ejs

Да, это так. Вы можете просто использовать HTML. Или просто используйте EJS. EJS - это расширенный набор HTML.

Я не хочу обременять себя необходимостью изучать язык шаблонов!

Вы можете выучить язык шаблонов за день. Это действительно поможет тебе. Просто сделай это. Оно того стоит.

3 голосов
/ 06 сентября 2011

Если вы хотите избежать изучения другого языка шаблонов, попробуйте попробовать шаблоны подчеркивания. Это просто javascript, который вы все равно будете изучать.

documentcloud.github.com / Подчеркивание / # шаблон

Вы можете установить его с помощью:

app.register('.html', {
    compile: function(str, options){
        var compiled = require('underscore').template(str);
        return function(locals) {
            return compiled(locals);
        };
    }
});
2 голосов
/ 24 августа 2013

Самый простой способ сделать это - заменить строку app.get ('/') ... по умолчанию на следующую. Затем поместите всю магию в index.html. По крайней мере, это будет хорошо работать для одностраничного приложения.

со следующим

app.get('/', function(request, response) {
var readFile = "index.html";
var fileContents = fs.readFileSync(readFile);

response.send(fileContents.toString());
});
1 голос
/ 07 октября 2016

Лучший вариант сейчас - использовать ejs (движок) и настроить его на прием и рендеринг html:

app.set('views', path.join(*__dirname*, 'views'))
app.set('view engine', 'ejs'); // template engine
app.engine('html', require('ejs').renderFile); // turn engine to use html

Примечание. Все ваши представления или шаблоны имеют расширение .html.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...