猿问

nodejs报错

TypeError: D:\movie-test\views\page\admin.jade:11
    9|           .col-sm-10
    10|             input#douban.form-control(type="text")
  > 11|             if movie._id
    12|               input(type="hidden", name="movie[_id]", value=movie._id)
    13|         .form-group
    14|           label.col-sm-2.control-label(for="inputCategory") 电影分类

Cannot read property '_id' of undefined
    at eval (eval at exports.compile (D:\movie-test\node_modules\jade\lib\index.js:218:8), <anonymous>:118:12)
    at eval (eval at exports.compile (D:\movie-test\node_modules\jade\lib\index.js:218:8), <anonymous>:523:22)
    at res (D:\movie-test\node_modules\jade\lib\index.js:219:38)
    at Object.exports.renderFile (D:\movie-test\node_modules\jade\lib\index.js:380:38)
    at Object.exports.renderFile (D:\movie-test\node_modules\jade\lib\index.js:370:21)
    at View.exports.__express [as engine] (D:\movie-test\node_modules\jade\lib\index.js:417:11)
    at View.render (D:\movie-test\node_modules\express\lib\view.js:135:8)
    at tryRender (D:\movie-test\node_modules\express\lib\application.js:640:10)
    at Function.render (D:\movie-test\node_modules\express\lib\application.js:592:3)
    at ServerResponse.render (D:\movie-test\node_modules\express\lib\response.js:1008:7)


加了

var bodyParser=require('body-parser');

app.use(bodyParser.urlencoded({extended:true}));


慕盖茨206890
浏览 1296回答 2
2回答

橋本奈奈未

你的admin.jade:11有错误抛出。错误原因是Cannot read property '_id' of undefined也就是movie._id是有问题的,如楼上所说。加个前置判断。另外,多说一句,如果你是用express的话,最新版已经内置了bodyparser了。

王磊

这一行报错了:if movie._id你可以先判断一下movie对象是否为真,再判断 movie._id,试试:if movie && movie._id
随时随地看视频慕课网APP

相关分类

Node.js
我要回答