Comments 22
Как правильнее закэшировать скомпилированные шаблоны, чтобы лишний раз не нагружать сервер?
Как правильно я Вам не скажу. Но я перекладываю это но голову сервера занимающегося отдачей статики (у меня nginx), при запуске сервера, просто компилируем все шаблоны как статичные js файлы, и выкладываем в public, можно еще следить не меняются ли шаблоны и в случае изменения перегенерировать файлы.
Все зависит от условий. Если шаблонов не много, то нет ничего плохого в хранении в памяти nodejs, только не забываем выставлять заголовки, что бы клиент лишний раз не бегал.
Тут имелось в виду, как закэшировать шаблоны внутри приложения. ETag вас не спасет в случае множества клиентов заходящих впервые.
Про заголовки я намекнул комментарием выше.
а зачем кешировать шаблоны внутри приложения? скомпилируйте их раз и отдавайте скомпилированные, файловая система сама разберется что ей чаще нужно и в свой кеш это вытянет, вы даже не заметите, что не с диска читаете :)
UFO landed and left these words here
Вобщем вся статья — про то как настроить шаблонизатор, про навигацию — 10 строк кода и ни слова :) удовлетворительно

Посмотрите на Бекбон, вам понравится, backbonejs.org/#Router
А что вы еще хотели бы узнать? С backbone знаком, но он мне не подходит, для большинства задач knockout подходит много лучше, и кода меньше.
да про навигацию много не нарассказываешь :) раз уж вы пользуетесь knockout сдлайте хотя бы обзорное сравнение knockout vs angular.js
Что только люди не придумают, чтоб не использовать backbone или spine…
Зачем вам библиотека History если вы можете использовать пару строчек кода который добавить в историю новый адрес.
try {
	history.pushState({foo:'bar'}, 'Test', url);
} catch(ex) {
	location.hash = '#' + url;
}

И повесить обработчик на события beforeunload и unload
Зачем людям jquery?
Наверное потому что библиотека будет работать везде одинаково в независимости от браузера, скрывая в своих внутренностях все баги и грабли разных браузеров.
Спасибо за статью про интересные технологии! Совсем как-то некрасиво сделана у вас отдача темплейтов клиенту. Понятно, что это девелопмент-версия и компиляция+конкатенация всего каждый раз не страшна при разработке, но для того, чтоб добавить один шаблон, придется каждый раз дописывать эту функцию. Гораздо удобнее было бы сделать отдачу jade с помощью middleware, это будет по-коннектовско-экспрессовски — можно просто настроить отдачу какого-то фолдера через jade.compile (можно оборачивать отдельные файлы в АМД), впрочем, я уверен, это можно спокойно найти готовое на гитхабе.
Вообще можно безболезненно экспортировать все шаблоны без префикса. По хорошему при запуске сервера, можно обходить все рекурсивно, компилировать в 1 js файл и выкладывать его в статик. Руками конечно делать не стоит, только как то трудно написать просто и понятный для всех пример и что бы все автоматически, кода тогда будет много, а основная идея где то потеряется.
UFO landed and left these words here
Буду благодарен если кто-то напишет как поэтапно с нуля можно написать простенький сайт на jade. Ajax и прочие плюшки не обязательно, просто самые основы.
Only those users with full accounts are able to leave comments. Log in, please.