为了账号安全,请及时绑定邮箱和手机立即绑定

Cannot read property '_id' of undefined

http://img1.sycdn.imooc.com//59a6b9990001288108300363.jpg

点击录入按钮时出现这个错误,看到好多小伙伴都出现了这个问题,有人是解决了的吗?

正在回答

2 回答

你在里打一个console.log(res.body.movie)

出现:

{ _id: 'undefined',

...

}

0 回复 有任何疑惑可以回复我~

找了半天的bug,最后问题发现在两个地方:

1.app.use(bodyParser.urlencoded({extended: true}));  
//body-parser是一个http请求体的终极模块,他可以解析不同数据格式(比如JSON,Raw,文本)的请求体,Express框架就是使用这个模块作为请求体的解析中间件。(我之前把extended属性设置为false了,所以不能正确解析)

2.if(id !== 'undefined'){ //... }
//‘undefined’是字符串,我之前直接写出undefined了,现在还没明白为什么是字符串,当一个变量没有找到时不应该是undefined吗?忘理解的朋友相告!!!!

4 回复 有任何疑惑可以回复我~
#1

慕运维0461344

1,哇,超级感谢你的,我被_id这个问题困扰了好几天一直找不出来解决办法。 2,关于.if(id !== 'undefined'){ //... } //‘undefined’是字符串,我之前直接写出undefined了,现在还没明白为什么是字符串,当一个变量没有找到时不应该是undefined吗?忘理解的朋友相告!!!! 可以这样理解吧,如果这个变量找得到的话,它的_id就是数据库原先自动给它的一串字符串,那么,当这个变量找不到的时候,数据库就会给它一串临时的_id为'undefined',说白了就因为_id是字符串啊
2018-06-18 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
node+mongodb 建站攻略(一期)
  • 参与学习       91860    人
  • 解答问题       889    个

带你完整实现一个从前端到后端的项目,初中级前端开发工程师必学课程

进入课程

Cannot read property '_id' of undefined

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信