Javascript 如何在引导模式(node.js)中的HTML视图上显示app.POST()结果
我想在HTML文件上显示登录结果。如果登录成功,则res.render(uuu dirname+“home.html”,{result:result});并显示“登录成功”模式。如果失败,则呈现到同一个文件login.html,并显示“login failed”toast 如何编写此函数? index.jsJavascript 如何在引导模式(node.js)中的HTML视图上显示app.POST()结果,javascript,html,node.js,jquery-ui,bootstrap-modal,Javascript,Html,Node.js,Jquery Ui,Bootstrap Modal,我想在HTML文件上显示登录结果。如果登录成功,则res.render(uuu dirname+“home.html”,{result:result});并显示“登录成功”模式。如果失败,则呈现到同一个文件login.html,并显示“login failed”toast 如何编写此函数? index.js const login = require('./login'); const enrollUser = require('./enrollUser'); // Define Expres
const login = require('./login');
const enrollUser = require('./enrollUser');
// Define Express app settings
app.use(cors());
app.use(express.json()); // for parsing application/json
app.use(express.urlencoded({ extended: true }));
app.set('views', __dirname + '/template/demo');
app.engine('html', require('ejs').renderFile);
app.set('view engine', 'html');
app.use(express.static(__dirname + '/template/demo'));
app.get('/', function (req, res) {
res.sendFile( __dirname + "/template/demo/" + "login.html" );
});
app.post('/login', (req, res) => {
login.execute(req.body.username)
.then(() => {
console.log('Logged in successfully');
const result = {
status: 'success',
message: 'Logged in successfully',
username: req.body.username
};
res.render( __dirname + "/template/demo/" + "index.html", {result:result});
})
.catch((e) => {
const result = {
status: 'error',
message: 'Failed',
error: e
};
res.render( __dirname + "/template/demo/" + "login.html", {result:result});
});
});
login.html
<form method="POST" action="/login" id="reg-form">
<input type="text" class="form-control" name="uname" id="uname">
<div class="col-lg-6 login-btm login-button">
<button type="submit" id="login" onclick="login()">LOGIN</button></div>
</form>
<%= result.message %>
登录
目前,它不会动态渲染。您需要使用ejs
或任何其他模板引擎来呈现HTML页面,然后您可以使用类似以下内容的response.render('login.ejs'、{result})
等。Express文档中介绍了这一点: