【发布时间】:2018-10-22 09:15:12
【问题描述】:
我正在做 The Net Ninja 的制作待办事项应用教程 (https://www.youtube.com/watch?v=IgAH0NqsJso&list=PL4cUxeGkcC9gcy9lrvMJ75z9maRw4byYp&index=33)。我可以删除待办事项应用程序上的预定义项目,但无法添加项目。每次我尝试添加一个项目时,我都会收到以下错误。似乎与未定义的 todos[i].item 有关。谢谢你的时间!下面是包含 To-do-App 的 .ejs 文件。
TypeError: C:\Users\dlma1\Desktop\Nodejs Practice\znode-js-playlist\views\todo.ejs:17
15| <ul>
16| <% for(let i=0;i<todos.length;i++){ %>
>> 17| <li><%= todos[i].item %></li>
18| <% } %>
19| </ul>
20| </div>
Cannot read property 'item' of undefined
**编辑: 所以有很多文件,我不想让人们不知所措,所以我将在下面发布我的 github。很抱歉之前没有包含这些文件!我不确定控制台错误日志是否足以诊断问题。
【问题讨论】:
-
todos[i]未定义,因此没有item键。todos到底是什么? -
对不起!我现在将它包含在一个 github 存储库中。它有一堆文件,所以当我编辑我的帖子时,如果它看起来很长,我就无法将它放入帖子中。感谢您的帮助!
-
data.push(res.body);res.body 是什么?如果您将 undefined 推送到data,则可以解释错误。 -
Ohhh wow omg 你是完全正确的 =.= 我一整天都在试图弄清楚这一点,你只花了一分钟时间。非常感谢!它应该是 data.push(req.body);
标签: jquery node.js ajax express body-parser