http://embeddedjs.com/
Embedded JS(EJS) 来源于ERB模板,且与ERB有很多相似之处。它有着与ERB相同的Tag,且包含很多相同的功能。EJS的特别之处在于,你需要把模板存于单独文件中,并将文件名传递给EJS。它会加载该文件,并返回HTML。
// in template.ejs Hello, <%= name %> // in JS file new EJS({ url: "template.ejs" }).render({ name: "Jack" }); // 返回: Hello, Jack
复制代码
注意,你可以加载文本模板:
new EJS({ text: "Hello, <%= name %>" }).render({ name: "Jack" });
复制代码
下面将介绍如何进行循环,以数组“People”为例,并在网站上链接到他们的个人页面:
// template.ejs <ul> <% for(var i = 0; i < people.length; i++) { %> <li><%= link_to(people[i], "/profiles/" + people[i]) %></li> <% } %> </ul> // in JS file new EJS({ url: "template.ejs" }).render({ people: [ "Jack", "Fred" ] }) // Each rendered <li> will look like: <li><a href="/profiles/Jack">Jack</a></li>
复制代码
这与Underscore 有些相似,但要注意“link_to”的使用。它是EJS定义的一个Helper,以便链接更容易使用。了解更多EJS,请关注EJS官方网站。