使用类似php的语法为node.js模板化库

是否有一个node.js库来“parsing”文件内容的特定语法? 在例子中,我有一个文件,我想在我的node.js服务器上:

<!DOCTYPE html> <html> <head>...</head> <body> <?node echo Date.getTime(); ?> <!-- or something like this, I hope you have got the idea --> </body> </html> 

然后它返回一个HTML文件:

 <!DOCTYPE html> <html> <head>...</head> <body> 08.08.2013 <!-- or something like this, I hope you have got the idea --> </body> </html> 

我不知道如何更精确地描述它,例如Apache服务器的PHP,而是node.js服务器。

你正在谈论一个模板引擎。 有许多可能性,其中最受欢迎的是

http://jade-lang.com/

与Express的整合尤其好。 你可以在这里find一个大的模板引擎列表:

https://github.com/joyent/node/wiki/modules#wiki-templating

您可以使用下划线模板 。 它可以让你写这样的模板:

 <ul> <% _.each(people, function(name) { %> <li><%= name %></li> <% }); %> </ul> 

EJS模板外观和感觉像PHP和ASP,但是纯JS: http : //embeddedjs.com/

他们的例子:

 <ul> <% for(var i=0; i<supplies.length; i++) {%> <li><%= supplies[i] %></li> <% } %> </ul> 

只要使用CGI-Node 。 它允许你像在PHP一样在任何虚拟主机上运行Node.js:

 <html> <head> </head> <body> <? var helloWorld = 'Hello World!'; ?> <?= helloWorld ?> <br> <b>I can count to 10: </b> <? for (var index = 0; index <= 10; index++) { ?> <?= index ?> <? } ?> </body> </html> 

我可能晚了一点晚,但我昨天的工作就像这样,它的作品令人惊讶的类似于PHP。 比如你可以做类似的东西

 <?j include_once("header.jhtml"); for(var i = 0; i < 10; i++) { ?> <span id="<?j print(i) ?>"> <?j} print($.req.url); include("footer.jhtml"); ?> 

这将包括头文件(如果它不包括之前),就像在PHP中,然后打印10个跨度的ID从0到9,然后打印请求url($是包含请求数据的上下文variables),然后包括页脚文件。 所以它基本上是用js语法的php。 我可能会在本周末在npm上发布。 尽pipe如此,正如我所说的那样,我已经在这一天工作了一天了。