Существует ли движок шаблонов для Node.js? [закрытый]

Это не метод, это - поле. Поле называют __name__. class.__name__ даст название класса как строка. object.__class__.__name__ даст название класса объекта.

271
задан meagar 4 June 2013 в 02:55
поделиться

11 ответов

Если вы ищете минималистский подход к шаблонам, вы можете проверить JSON Template .

Более полнофункциональный альтернативой является EJS . Это немного больше похоже на то, что вы получили бы от Django.

Ваш опыт может отличаться для каждого из них - они предназначены для среды Javascript браузера, а не для Node.js.

5
ответ дан 23 November 2019 в 02:16
поделиться

Постоянно появляются новые механизмы создания шаблонов.

underscore.js добавляет много поддержки функционального программирования в js и имеет шаблоны.

И только сегодня я услышал об этом: http://github.com/SamuraiJack/Shotenjin-Joosed

15
ответ дан 23 November 2019 в 02:16
поделиться

Вы пробовали PURE ?
Если вы попробуете, не стесняйтесь сообщать о любых проблемах, с которыми вы можете столкнуться, на форуме

Пока он был изначально разработан для браузера, он хорошо работает с Jaxer и Rhino.

Я еще не знаю node.js, но если вы можете кэшировать некоторые JS и функции в памяти, скорость должна быть еще более впечатляющей.

2
ответ дан 23 November 2019 в 02:16
поделиться

У вас должна быть возможность использовать mustache.js, если он не работает, пришлите мне проблемы, и я исправлю их, потому что я собираюсь использовать их в node.js в любом случае.

http://github.com/janl/mustache.js

Я знаю, что он работает без DOM, потому что множество автономных приложений CouchDB используют его на сервере просмотра Spidermonkey.

52
ответ дан 23 November 2019 в 02:16
поделиться

Имеется перенос механизма шаблонов Django на JavaScript. Тем не менее, он давно не обновлялся, но в нем может быть достаточно функций.

http://code.google.com/p/jtl-javascript-template/

2
ответ дан 23 November 2019 в 02:16
поделиться

Следует обратить внимание на node-asyncEJS, который явно разработан с учетом асинхронной природы node.js. Он даже позволяет использовать блоки асинхронного кода внутри шаблона.

Вот пример из документации:

<html>
  <head>
    <% ctx.hello = "World";  %>
    <title><%= "Hello " + ctx.hello %></title>
  </head>
  <body>

    <h1><%? setTimeout(function () { res.print("Async Header"); res.finish(); }, 2000)  %></h1>
    <p><%? setTimeout(function () { res.print("Body"); res.finish(); }, 1000)  %></p>

  </body>
</html>
13
ответ дан 23 November 2019 в 02:16
поделиться

Я проделал некоторую работу над довольно полным портом языка шаблонов Django для проекта Simon Willisons djangode (служебные функции для node.js, которые заимствуют некоторые полезные концепции из Django).

См. Документацию здесь .

6
ответ дан 23 November 2019 в 02:16
поделиться

Попробуйте также Yajet . ;-) Это новый, который я выпустил только вчера, но я использую его уже некоторое время, и он стабильный и быстрый (шаблоны компилируются в собственную JS-функцию).

Он имеет наилучший синтаксис IMO для механизма шаблонов и богатый набор функций, несмотря на небольшой размер кода (уменьшенный до 8,5 КБ). В нем есть директивы, которые позволяют вводить условные обозначения, перебирать массивы / хэши, определять повторно используемые компоненты шаблона и т. Д.

2
ответ дан 23 November 2019 в 02:16
поделиться

Если вам нравится haml, но хочется чего-то еще лучше, посмотрите http://jade-lang.com для node, я также написал haml.js :)

40
ответ дан 23 November 2019 в 02:16
поделиться

Шаблоны закрытия Google - это система шаблонов на основе встроенного JavaScript, которая, казалось бы, естественным образом сочетается с NodeJS. Вот несколько инструкций по их интеграции.

3
ответ дан 23 November 2019 в 02:16
поделиться

haml - хороший выбор для node.js

http://github.com/creationix/haml-js

haml-js

!!! XML
!!! strict
%html{ xmlns: "http://www.w3.org/1999/xhtml" }
  %head
    %title Sample haml template
  %body
    .profile
      .left.column
        #date= print_date()
        #address= current_user.address
      .right.column
        #email= current_user.email
        #bio= current_user.bio

html

<?xml version='1.0' encoding='utf-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sample haml template
</title></head><body><div class="profile"><div class="left column"><div id="date">January 1, 2009
</div><div id="address">Richardson, TX
</div></div><div class="right column"><div id="email">tim@creationix.com
</div><div id="bio">Experienced software professional...
</div></div></div></body></html>
4
ответ дан 23 November 2019 в 02:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: