Javascript 无法读取属性';forEach&x27;Node.js中未定义的
我试图显示所选记录并在视图上显示,但出现以下错误: 无法读取未定义的属性“forEach” 我已经尽了我所能,但无法解决它。请参阅下面的代码。我测试了与数据库的连接,它已连接Javascript 无法读取属性';forEach&x27;Node.js中未定义的,javascript,node.js,express,Javascript,Node.js,Express,我试图显示所选记录并在视图上显示,但出现以下错误: 无法读取未定义的属性“forEach” 我已经尽了我所能,但无法解决它。请参阅下面的代码。我测试了与数据库的连接,它已连接 router.get('/getme', function(req, res, next) { db.query('SELECT * FROM STATE', function (err, rs) { res.render('getme', {state: rs}); }); }); <table>
router.get('/getme', function(req, res, next) {
db.query('SELECT * FROM STATE', function (err, rs) {
res.render('getme', {state: rs});
});
});
<table>
<tr>
<td> state id</td>
<td> state name </td>
</tr>
<% state.forEach(function(item) { %>
<tr>
<td><%= item.stateid %></td>
<td><%= item.state_name %></td>
</tr>
<% }); %>
</table>
可能您的rs
是未定义的
,err
不是未定义的
(从数据库加载时出错)
您应该检查:
if (err) {
// handle err here
} else {
res.render('getme', {state: rs});
}
您是否尝试打印
错误
?它的值是什么?在控制器db回调中尝试console.log(res)
。这意味着state
的值是undefined
考虑为state
设置if子句,在设置foreach循环之前,我必须检查if子句,它没有打印rs
或err
。您认为是数据库的错误还是我该如何修复此问题?确实,rs
未定义,err
未定义。我检查时收到错误消息。请问您对如何解决这个问题有什么建议吗?感谢您可以呈现找不到该用户的其他页面,。其他检查state==未定义的,不显示信息的表,只需对用户说您没有关于他/她的信息,并说请再试一次(或类似的事情)我收到此消息打印err
:{“errno”:“econnerefused”,“code”:“econnerefused”,“syscall:“connect”,“address:“127.0.1”,“port”:3306,“致命”:true}
。我认为错误在于数据库。如果您有任何建议,我将添加我的连接设置。谢谢你确定你有匹配的用户
+密码
,默认密码是'
查看你的mysql服务器是否正在运行或正在接受连接,检查用户名,如果有则通过providde@NAHEEMOLANIYAN
(err, rs)
if (err) {
// handle err here
} else {
res.render('getme', {state: rs});
}