node.js是否有一个库来“解析”具有特定语法的文件内容? 在示例中,我有一个文件,我想在我的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服务器。
答案 0 :(得分:3)
EJS模板看起来和感觉像PHP和ASP,但是纯JS:http://embeddedjs.com/
他们的例子:
<ul>
<% for(var i=0; i<supplies.length; i++) {%>
<li><%= supplies[i] %></li>
<% } %>
</ul>
答案 1 :(得分:2)
您正在谈论模板引擎。有许多可能性,其中最受欢迎的是 jade :
与Express frawework集成时特别好。你可以在这里找到一个很大的模板引擎列表:
答案 2 :(得分:2)
您可以使用Underscore templates。它允许您编写如下模板:
<ul>
<% _.each(people, function(name) { %>
<li><%= name %></li>
<% }); %>
</ul>
答案 3 :(得分:2)
只需使用CGI-Node即可。它允许您在任何Web托管上运行Node.js,就像PHP一样:
<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>
答案 4 :(得分:-2)
我可能会晚一点,但我昨天做了类似的事情,它的工作方式与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($是包含的上下文变量请求数据),然后包括页脚文件。所以它基本上是用js语法编写的php。我可能会在本周末的npm上提供它。但是,正如我所说的那样,我已经在它的早期阶段工作了一天。