gpt4 book ai didi

node.js - 从路由器传递值到 Node js中查看

转载 作者:太空宇宙 更新时间:2023-11-04 00:24:04 24 4
gpt4 key购买 nike

我正在尝试将消息从路由器传递到我的 ejs View 索引。但是当我在浏览器上加载 View 时,它说对象键未定义

    if(data != null){
if(data.name == req.body.name){
res.render('index', {err: 'The name already exist'});
}
}

这是声明,我试图在用户单击提交按钮时显示此错误

这是我用来显示错误的 EJS 模板代码

<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<h1>Add names</h1>
<p>Enter your name to add it into a database</p>
<form method="POST" action="/names">
<input type="text" name="name" placeholder="Enter Name here" required/>
</br>
<input type="submit"/>
</form>
<%for(var i = 0; i < data.length; i++){%>
<p>This is your name: <%=data[i].name%></p>
<%}%>

<p><%=err%></p>

</body>
</html>

错误显示为(错误未定义)

谢谢

最佳答案

您需要检查解析到 ejs 模板的变量或值是否存在。在您的 EJS 模板上,尝试以下更改

    <%if(typeof(data) != 'undefined'){for(var i = 0; i < data.length; i++){%>
<p>This is your name: <%=data[i].name%></p>
<%}}%>

<%if(typeof(err) != 'undefined'){%>
<p><%=err%></p>
<%}%>

干杯!

关于node.js - 从路由器传递值到 Node js中查看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43534639/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com