Javascript 为';那不是玉

Javascript 为';那不是玉,javascript,html,templates,node.js,pug,Javascript,Html,Templates,Node.js,Pug,Jade确实很整洁,但我个人不喜欢它的语法和外观。是的,能写的只是: body h1 Hello p This is b bold 这很酷,但我还是更喜欢HTML/XML的外观和感觉。它是为了让人和机器都能阅读,总的来说,我认为它更容易浏览和理解 是否有工作更像以下内容的模板引擎: <body> <h1>{title}</h1> <p>{content}</p> </body> 考虑一下。您可以

Jade确实很整洁,但我个人不喜欢它的语法和外观。是的,能写的只是:

body
  h1 Hello
  p This is 
    b bold
这很酷,但我还是更喜欢HTML/XML的外观和感觉。它是为了让人和机器都能阅读,总的来说,我认为它更容易浏览和理解

是否有工作更像以下内容的模板引擎:

<body>
  <h1>{title}</h1>
  <p>{content}</p>
</body>
考虑一下。您可以用JSON提供数据,并将其应用于模板。

请查看。允许您使用常规HTML和嵌入Javascript代码

例如:

<div>
<% if (foo) { %>
foo
<% }else { %>
bar
<% } %>
</div>

福
酒吧

另外,您需要的是一个“与Express兼容”的模板引擎,而EJS是与Express兼容的。它是由Express背后的一位主要人物制作的。

一些看起来特别像Node.js的东西。检查。

您可以在Jade中使用直接HTML,请尝试一下:

<body>
  <h1>#{title}</h1>
  <p>#{content}</p>
</body>

#{title}
#{content}

如果您已经在使用

var compiled=ux0.template(“hello:”);
已编译({name:'moe'});
=>“你好:莫”

模板可能只是口味的问题。我也不喜欢Jade,喜欢HTML是更好的选择。 大多数情况下,webdesign布局无法轻松转换为这些模板

样本提供了小胡子:

<h1>{{header}}</h1>
{{#bug}}
{{/bug}}

{{#items}}
  {{#first}}
    <li><strong>{{name}}</strong></li>
  {{/first}}
  {{#link}}
    <li><a href="{{url}}">{{name}}</a></li>
  {{/link}}
{{/items}}

{{#empty}}
  <p>The list is empty.</p>
{{/empty}}
{{header}
{{{#bug}
{{/bug}
{{{#项目}
{{{第一}
  • {{name}}
  • {{/first} {{{#link}
  • {{/link} {{/items} {{{空} 列表是空的

    {{/empty}

    它可以与Angular.js语法混合使用。。。使用它的人可能会遇到问题。

    我推荐一个新的模板引擎:Saker,它支持流体编码工作流,与大多数模板语法不同,您不需要中断编码来明确表示HTML中的服务器块。
    Github:

    代码如下所示:

    <body>
        <h1>@title</h1>
        <p>@content</p>
    </body>
    
    
    @头衔
    @内容

    我个人在我所有的Node JS项目中使用了几年,现在仍然喜欢它。我从Swig切换过来,因为当项目变得更复杂时,Swig缺乏一些可扩展性


    一、 我也不是Jade/Pug的粉丝。我更喜欢普通的HTML语法,并注入一些自定义模板方案。

    另外。类似于Mustache的语法,但是稍微强大一点。到目前为止我很喜欢这个。下面有人说你可以用Jade和htmltho。也看看吧,我有第二把把手。它建立在胡子的基础上,但在我看来,添加助手是不可替代的。
    <h1>{{header}}</h1>
    {{#bug}}
    {{/bug}}
    
    {{#items}}
      {{#first}}
        <li><strong>{{name}}</strong></li>
      {{/first}}
      {{#link}}
        <li><a href="{{url}}">{{name}}</a></li>
      {{/link}}
    {{/items}}
    
    {{#empty}}
      <p>The list is empty.</p>
    {{/empty}}
    
    <body>
        <h1>@title</h1>
        <p>@content</p>
    </body>