【发布时间】:2023-04-05 12:59:02
【问题描述】:
我是 nodejs 和 expressjs 的新手 我正在尝试开发一个简单的登录页面,该页面在表单中包含用户名字段和密码。在提交表单时,我会将用户重定向到主页,在该主页上我将显示消息欢迎用户 - 用户名。我希望登录页面和主页都是简单的 html 文件。登录页面中的表单将操作设置为 home.html,因此当用户提交表单时,我可以使用 res.body.userName 和 res.body.password 获取用户名和密码。我的问题是如何使用 express 来呈现 html 文件。我知道我可以使用 res.sendfile 函数来发送 html 文件,但 sendfile 函数不支持将变量共享到 html 文件。 我在 app.js 中的代码下方发布了
var http = require("http");
var express = require("express");
var app = express();
app.use(express.bodyParser());
app.all("/",function(req,res,next){
res.render("login.html");
});
app.all("/home.html",function(req,res,next){
res.render("home.html",{"userName":req.body.userName});
})
http.createServer(app).listen(3000,function(){
console.log("Listening at port 3000");
})
【问题讨论】:
-
为此你需要一个渲染引擎,比如jade或ejs
-
HTML 不是模板语言,只是纯粹的标记。 EJS 是最接近纯 HTML 且能够添加变量的东西。
标签: javascript node.js express