什么是模板引擎?

时间:2012-03-03 14:51:38

标签: javascript

  

可能重复:
  Javascript templating engines?

我继续绊倒javascript模板引擎,我不知道他们的目的是什么。有谁能解释我,就像我五岁那些是什么?前端开发人员可以使用这些吗?

1 个答案:

答案 0 :(得分:30)

在使用像Node.js这样的服务器端js时,经常使用JavaScript模板引擎来编写胖JS客户端或“常规”模板引擎。

不是通过使用字符串连接等生成HTML来混淆代码,而是使用模板并在其中插入变量。

例如,在下面的示例中,您将数组foo传递给模板引擎,然后从数组foo中插入项目 i 来插入(替换占位符$ {data}):

//pseudo code
<table>
 <tr>
   for each variable data in foo
    <td>${data}</td>
   end
 <tr>
</table>

在像backbone.js这样的框架中,您通常使用模板来实现MVC模式的视图部分。

JS中有许多不同类型的模板引擎。有些是服务器端框架的直接端口,如ERB,HAML等。其他是专门为使用JavaScript开发的,Pure

关于模板引擎应该给你多少表达力的争论,因为在模板中放置逻辑通常是件坏事。因此,一些模板引擎专门设计为不允许您将逻辑放入其中,即Mustache