获取错误,类型错误:无法读取 null 的属性(读取“某物”)但它仍然有效

问题描述 投票:0回答:1

我有一个 mongoDB 数据库,当我使用 ejs 命令时,其中的数据可用<%=foundAnswer.week%> 在前端打印了数据门,但在后端它发布了无法读取 null 的错误。即使一切正常。

这是我的后台路由-

app.get('/nptel/:courseName/:weekNumber', function (req, res) {
  Nptel.findOne(
    {
      nptel_name: req.params.courseName,
      week: req.params.weekNumber,
    },
    (err, foundAnswer) => {
      if (!err) {
        res.render('nptel_weeksAnswer', {
          foundAnswer: foundAnswer,
        });
      } else {
        res.render('error');
      }
    }
  );
});

这是ejs文件-

<div class="col"><h1>Week <%=foundAnswer.week%> :</h1></div>
<div class="nptel_answer mb-2">
   <div class="nptelQ"><h4><%=foundAnswer.question_1%></h4></div>
   <div class="nptelA"><h5><%=foundAnswer.answer_1%></h5></div>
</div>

这里,是错误-


TypeError: C:\Users\parak\Desktop\My Website\Brogrammers\Brogrammers\views\nptel_weeksAnswer.ejs:5
    3| <div class="container">
    4|   <div class="row row-cols-1 row-cols-md-2 g-4">
 >> 5|     <div class="col"><h1>Week <%=foundAnswer.week%> :</h1></div>
    6|     <div class="col" style="position: static; bottom: 0%">
    7|       <h1 style="color: red">
    8|         Disclaimer :

Cannot read properties of null (reading 'week')

我尝试删除空格和所有 .. 并检查了我的数据树 .. 一切都很好......前端工作正常。

node.js mongodb ejs
1个回答
0
投票

我希望您将以下行添加到您的代码中:-

console.log(foundAnswer);
if (!err) {
        ** Add it here **
        res.render('nptel_weeksAnswer', {
          foundAnswer: foundAnswer,
        });
      } else {

然后运行你的代码并给我们控制台中显示的结果

© www.soinside.com 2019 - 2024. All rights reserved.