Node.js NodeJS:为动态文件提供服务

Node.js NodeJS:为动态文件提供服务,node.js,express,Node.js,Express,我已经习惯了PHP,在PHP中,代码被放在一个文件中,并在每次加载时执行 对于NodeJS,我需要使用HTML文件,但需要在文件中进行计算。一个解决方案是将整个文件的HTML内容放入运行HTTP服务器的文件中,但我希望将它们放在文件中 我正在使用NodeJS和Express。这是如何做到的?听起来您想使用模板,下面是一个示例: 如果您使用express并希望呈现HTML文件,则应使用ejs作为模板引擎。以下是您如何从头开始执行此操作: 使用express-e 告诉express使用ejs呈现HT

我已经习惯了PHP,在PHP中,代码被放在一个文件中,并在每次加载时执行

对于NodeJS,我需要使用HTML文件,但需要在文件中进行计算。一个解决方案是将整个文件的HTML内容放入运行HTTP服务器的文件中,但我希望将它们放在文件中


我正在使用NodeJS和Express。这是如何做到的?

听起来您想使用模板,下面是一个示例:


如果您使用express并希望呈现HTML文件,则应使用
ejs
作为模板引擎。以下是您如何从头开始执行此操作:

使用
express-e

告诉
express
使用
ejs
呈现HTML文件:

app.configure(function(){
  // ... 
  app.set('views', __dirname + '/views');
  // app.set('view engine', 'ejs');
  app.engine('html', require('ejs').renderFile);
  // ...
});
创建路线:

app.get("/", function(req, res) {
  res.render("your.html", {
    title: "This is plain HTML rendered with ejs"
  })
})
最后是
views
文件夹中的
your.html
文件

<!DOCTYPE html>
<html>
  <head>
    <title><%= title %></title>
  </head>
  <body>
    <h1><%= title %></h1>
    <p>Welcome to <%= title %></p>
  </body>
</html>

欢迎来到


在节点应用程序本身内完成工作。这就是重点。另请看:也许这就是您要找的?我需要,但如果我要提供大量HTML文件,我希望将它们放在一个目录中并从那里提供服务。您仍然可以这样做!这是绝对值得鼓励的。