Я использую node.js на стороне сервера, express.js и jade.Я написал небольшую функцию-обертку для заполнения нефритовых шаблонов на стороне клиента.Я думаю, что буду использовать requireJS и jQuery на стороне клиента, но пока не решил.Теперь задача, которую я должен выполнить много раз:
- выборка шаблона (с сервера или из кэша)
- выборка данных с сервера
- заполнение шаблона ивставьте его в / вместо элемента
Примечание: существует множество шаблонизаторов, и мой вопрос не о шаблонизаторе, а о простом рабочем процессе.
Я должен сделать это следующим образом:
var get_data = function (tpl) {
$.get(url, function(data) {
$('#target_element').html(jade.render(tpl, {locals: data}));
});
};
if (!'template_name' in _cache) {
$.get('template_name', function(tpl) {
_cache['template_name'] = tpl;
get_data(tpl);
});
}
else {
get_data(_cache['template_name']);
}
(в этом примере шаблон и данные выбираются синхронно, что нехорошо)
Я бы хотел получитькод, подобный следующему:
render_template('template_name', 'url?arguments=values', {replace: '#element_id'});
(он похож на синтаксис MongoDB)
Существует ли простая структура или модуль jquery для этой работы?