【问题标题】:Is there a jade template engine for ASP.NET MVC?是否有 ASP.NET MVC 的玉模板引擎?
【发布时间】:2011-11-11 22:21:15
【问题描述】:

我一直在 ASP.NET MVC 中寻找最适合我的 ViewEngine,在观察了 JAVA、PHP、Python、Ruby、NodeJS 中的大量模板引擎之后......我找到了jade template并喜欢它,因为它有一些非常好的功能:

  1. 默认对所有 html 进行编码,就像剃须刀一样,是安全性和说服力的一个很好的补充
  2. 缩进结构,所以摆脱标签地狱,在写了多年的HTML之后,我讨厌所有那些>
  3. 清除逻辑代码,通过在 if/else/for 前面加上一行“-”,可以最大限度地减少选择和循环的代码。
  4. 空白条,jade 输出“压缩”的 html,标签或文本之间没有多余的空白

我也观察过很多ViewEnginge for ASP.NET MVC,有些很接近玉,但还是有缺陷:

  • NHaml通过缩进构造HTML,但默认不编码html,标签前缀%真的很烦
  • Razor 可能是唯一默认编码 html 的 ViewEngine,但对我来说还是有点重,因为 razor 的基本标记仍然是 html 标签,而且 razor 也无法为我去除多余的空白

所以如果有一个更接近玉的 ViewEngine,我会怀疑,是否有玉到 .NET 的端口?

谢谢

【问题讨论】:

    标签: asp.net-mvc templates pug viewengine


    【解决方案1】:

    Spark View Engine 从 v1.7 (4/12) 起支持解析 Jade 模板。

    阅读更多:http://sparkviewengine.codeplex.com/releases/view/86901

    通过 NuGet 包安装:

    Install-Package Spark.Web.Mvc3
    

    Install-Package Spark.Web.Mvc2
    

    阅读更多:http://nuget.org/packages/Spark.Web.Mvc3

    【讨论】:

    • 如何让 spark 识别 *.shade 文件?使用最新版本,它仍然会寻找火花而不是阴影
    • 为什么这不是一个更大的交易!?这太棒了!
    • 虽然这是一个好的开始,但它的支持很少,并且与原始 Jade 存在一些语法不兼容。特别是它似乎不支持文档类型或属性。
    【解决方案2】:

    它不像 Jade 那样干净,但您不必使用 WingBeats 编写“真正的”HTML。

    【讨论】:

    • 谢谢,有一个新的 DSL 似乎是可以接受的,它很干净,所以我想试试 :)
    • 也许只有我,但那是可怕的语法。
    • @AlexFord 不仅仅是你。太可怕了。
    【解决方案3】:

    这是一个非常新鲜的项目,因此结果可能会因您阅读本文的时间而异: 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

    【讨论】:

      猜你喜欢
      • 2012-01-14
      • 1970-01-01
      • 2016-04-05
      • 1970-01-01
      • 2015-08-21
      • 1970-01-01
      • 1970-01-01
      • 2010-10-06
      • 2017-10-19
      相关资源
      最近更新 更多