首页 > 解决方案 > 如何从 mongo 渲染项目?

问题描述

我想将 MongoDB 数据库中的数据呈现到下拉菜单中,但它不起作用。我遇到一个错误,指出“未定义 listName”,但我已经在 app.js 中声明了这一点。请问我该如何解决这个问题?

这是故障上完整代码的链接 https://glitch.com/edit/#!/join/617e47ff-4d73-45df-ba0f-553d2b9ac034


   List.find({}, function(err, foundnames){

   res.render("dropdown", {listName: foundnames});
       });
   });
<div class="dropdown box2">
  <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
    View List
  </button>
  <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">

    <%   listName.forEach(function(list){ %>
    <li><a class="dropdown-item" href="#"><%=list.name%></a></li>
    <%  }) %>

  </div>
</div>
    </form>

标签: javascriptnode.jsmongodbexpressejs

解决方案


我有我的故障问题。我不再给你代码了,好像我保存了它:/

我修改了你的代码并再次测试它。我认为共享变量存在问题。

res.render("list", {listTitle: "Today", newListItems: array});

您共享变量 newListItems 但尝试使用 listname 访问。真的吗?我无法查看您的原始代码:/


推荐阅读