Как скомпилировать шаблоны jade в функции JavaScript, чтобы использовать их на стороне клиента?

Я хочу использовать скомпилированные шаблоны jade на стороне клиента. Как их скомпилировать, чтобы получить файлы javascript ? https://github.com/visionmedia/jade

6 ответов


ищите предлагаемые решения в Джейд вопрос 149 обсуждение. К сожалению, нет встроенного готового к использованию варианта, как я знаю.


Да, вы можете! https://github.com/techpines/asset-rack#jadeasset

Я просто открываю исходный "asset-rack", проект nodejs, который может предварительно скомпилировать шаблоны jade и обслуживать их в браузере как функции javascript.

это означает, что рендеринг невероятно быстрый, даже быстрее, чем микро-шаблоны, потому что в браузере нет шага компиляции.

сначала вы устанавливаете его на сервере следующим образом:

new JadeAsset({
    url: '/templates.js',
    dirname: __dirname + '/templates'
});

Если вы каталог шаблонов выглядел так:

templates/
  navbar.jade
  user.jade
  footer.jade

тогда все ваши шаблоны заходят в браузер под переменной "Templates":

$('body').append(Templates.navbar());
$('body').append(Templates.user({name: 'mike', occupation: 'sailor'});
$('body').append(Templates.footer());

#coffeescript
jade = require 'jade'
data = '#menu'
options = 
  client: true
  compileDebug: false
fn = jade.compile data, options
console.log fn.toString()

вы, вероятно, должны посмотреть на интеграцию этого в грунт создать задачу.

посмотреть хрюкать-ВНО-Джейд


лопатки - Это Jade-подобный движок шаблонов HTML, который имеет встроенное промежуточное ПО для обслуживания скомпилированных шаблонов клиенту. :) Зацените!


этот вопрос немного устарел, но есть метод компиляции шаблонов Jade,

var jade = require('jade');
var fn = jade.compile(jadeTemplate);
var htmlOutput = fn({
  maintainer: {
    name: 'Forbes Lindesay',
    twitter: '@ForbesLindesay',
    blog: 'forbeslindesay.co.uk'
  }
})

просто учебник и ищите compile или API-интерфейс под

 jade.compile(source, options)

будьте уверены, чтобы установить, compileDebug Итак, вы получаете источник,

установите значение false для отключения инструментария отладки (рекомендуется в производстве). Установите значение true для включения источника функции в скомпилированный шаблон для улучшения сообщений об ошибках (иногда полезный в разработке).