mongoose 参考错误:初始化前无法访问“list”

lmyy7pcs  于 2023-03-12  发布在  Go
关注(0)|答案(1)|浏览(250)

我现在正在做一个项目,我正在使用mongoose,我面临着一个问题,我检查了,如果已经有一个文件在我的数据库中具有相同的名称,我所搜索的,如果它可用,然后返回该页面,如果不可用,然后创建一个新的文件与该名称.但在控制台的主要问题,它显示,

**ReferenceError: Cannot access 'list' before initialization **

我得到了我的代码和控制台视图,有人可以建议我必须更改哪一点。
在我的app.js文件中...

app.get('/:customListName', function(req,res){
       const customListName=req.params.customListName;

       List.findOne({name:customListName}).then(function(foundList){

         // if(!err){
           if(foundList===null){
             const list= new list({
               name:customListName,
               items:foundItem
             });

             list.save();
             res.render('/'+customListName);
               console.log(foundList);
           }else{
               res.render("list", {listTitle: customListName, newListItems: foundItem});

           }
         

       });

});

但在控制台......
C:\用户\suraj\文档\Web开发-2\todolist-v2-启动文件\app.js:79常量列表=新列表({ ^
参考错误:无法在初始化之前访问位于C:\Users\suraj\Documents\Web development-2\todolist-v2-starting-files\app.js:79:26的“列表”,该位置位于进程。进程滴答和拒绝(节点:内部/进程/任务队列:95:5)
Node.js v18.13.0 [nodemon]应用程序崩溃-启动前等待文件更改...

有人能提出一些解决办法吗?

mrfwxfqh

mrfwxfqh1#

试试

app.get('/:customListName', async function (req, res) {
  const customListName = req.params.customListName;
  try {
    const foundList = await List.findOne({ name: customListName });
    const foundItem = ''; // Define or retrieve the foundItem value

    if (!foundList) {
      const list = await List.create({
        name: customListName,
        items: foundItem,
      });

      console.log(list);
      res.render('/' + customListName);
    } else {
      res.render('list', {
        listTitle: customListName,
        newListItems: foundItem,
      });
    }
  } catch (err) {
    throw new Error('Something went wrong');
  }
});

相关问题