Это вопрос из нескольких частей, и я полный новичок в Node, поэтому, пожалуйста, будьте осторожны :)
У меня есть очень простое приложение Node/express, которое возвращает index.html без использования маршрутизации...
var app = express();
var port = process.env.PORT || 1337;
app.use('/i', express.static(__dirname + '/i'));
app.use('/Stylesheets', express.static(__dirname + '/Stylesheets'));
app.use(express.static(__dirname));
app.listen(port);
console.log('listening on port ' + port);
index.html используется как статический файл.
Моя следующая задача - начать возвращать несколько страниц с правильной маршрутизацией, я дошел до того, что решил, что мне нужно поместить свои маршруты в файл route.js и «требовать» этот файл в моем файле server.js, но я могу Я не понимаю, как настроить маршруты, и каждый пример/демонстрация, которую я вижу в Интернете, кажется, делает это по-другому. Любые окончательные примеры того, как это сделать, будут действительно оценены.
Следующая часть проблемы заключается в том, что я хочу включить динамические страницы, но не знаю, что делать с механизмами шаблонов. Я хотел бы использовать что-то «ненавязчивое», чтобы мои исходные HTML-файлы по-прежнему имели смысл при просмотре в браузере.
Во внешнем интерфейсе я бы просто вставил HTML на страницу, сначала используя селектор, а затем используя метод .html() для изменения html, я мог бы связать данные JSON с шаблоном, а затем вставить их в нужное место, посмотрев для имени класса и т. д. Это было бы совершенно ненавязчиво и не требовало бы никаких уродливых скобок {}, встроенного javascript или директив. Псевдокод...
var data = {"name":"John"};
var result = templateEngine.bind("/template.html", data)
$('.person').html(result);
Таким образом, я мог сохранить исходный HTML-код чистым и доступным для просмотра, например...
<div class="person">
My Name is FirstName
</div>
Самое близкое, что я могу найти, это PURE - http://beebole.com/pure - но я не уверен как заставить его работать с NODE (или даже если он совместим).
Чтобы добавить больше сложности, любой механизм шаблонов, который я использую, должен иметь возможность использовать подшаблоны (частичные?), чтобы я мог включать верхний/нижний колонтитул и т. д., которые одинаковы на каждой странице. Я предполагаю, что это можно сделать рекурсивно, ссылаясь на подшаблоны внутри каждого основного шаблона, где это необходимо?
Если вы все еще читаете это, то, очевидно, вы поняли, что я барахтаюсь здесь с новой технологией, и любая помощь будет очень признательна!