Существует ли нефритовый механизм шаблонов для ASP.NET MVC?

Я всегда искал наиболее подходящий для меня ViewEngine в ASP.NET MVC, и, просмотрев массу шаблонизаторов в JAVA, PHP, Python, Ruby, NodeJS... я нашел шаблон Jade, и он мне очень понравился, так как у него есть несколько действительно приятных функций:

  1. Кодировать весь html по умолчанию, как бритва, это хорошее дополнение к безопасности и удобству.
  2. Структурируйте по отступу, так что избавьтесь от адского тега, после многих лет написания HTML я ненавижу все эти и >!
  3. Очистите логический код, предваряя if/else/for одной строкой "-", это минимизирует код для выбора и цикла.
  4. Полоса пробелов, jade выводит «сжатый» html, в котором нет лишних пробелов между тегами или текстами.

Я также наблюдал множество ViewEnginge для ASP.NET MVC, некоторые очень близки к jade, но все же с дефектами:

  • NHaml структурирует HTML по отступу, но не кодирует HTML по умолчанию, а префикс тега % действительно раздражает.
  • Razor может быть единственным ViewEngine, который кодирует html по умолчанию, но он все еще немного тяжеловат для меня, так как основная разметка razor по-прежнему состоит из тегов html, а также razor не может удалить лишние пробелы для меня.

поэтому мне интересно, есть ли ViewEngine ближе к нефриту, или есть ли порт нефрита для .NET?

Спасибо


person otakustay    schedule 07.09.2011    source источник


Ответы (3)


Он не такой чистый, как Jade, но вам не придется писать «настоящий» HTML с помощью WingBeats.

person Jan Jongboom    schedule 07.09.2011
comment
Спасибо, кажется приемлемым иметь новый DSL, он довольно чистый, так что я бы попробовал :) - person otakustay; 08.09.2011
comment
Может быть, это только я, но это отвратительный синтаксис. - person Chev; 19.12.2012
comment
@AlexFord это не только ты. это ужасно. - person airtonix; 10.10.2014

Spark View Engine поддерживает синтаксический анализ шаблонов Jade, начиная с версии 1.7 (4/12).

Подробнее: http://sparkviewengine.codeplex.com/releases/view/86901

Установить через пакет NuGet:

Install-Package Spark.Web.Mvc3

or

Install-Package Spark.Web.Mvc2

Подробнее: http://nuget.org/packages/Spark.Web.Mvc3

person Chris Vogt    schedule 13.05.2012
comment
Как заставить искру распознавать файлы *.shade? с последней версией он по-прежнему ищет искру, а не тень - person Vartan Arabyan; 31.05.2012
comment
Почему это не более серьезное дело!? Это круто! - person Chev; 19.12.2012
comment
Хотя это хорошее начало, его поддержка минимальна и имеет некоторые синтаксические несовместимости с оригинальным Jade. В частности, похоже, что он не поддерживает типы документов или атрибуты. - person Christopher Currie; 28.01.2013

Это действительно новый проект, поэтому результаты могут различаться в зависимости от времени, когда вы читаете это: https://github.com/Buildstarted/Javascript.ViewEngines

Это статья, представляющая это: http://buildstarted.com/2013/12/16/javascript-view-engine-for-aspnet/

Поддерживает Haml, Dust, Handlebars, Jade, Mustache, Resig, Underscore, Vash

person Wiebe Tijsma    schedule 16.12.2013