Express 将数据从mongodb推送到前端阵列

Express 将数据从mongodb推送到前端阵列,express,ejs,Express,Ejs,我正在开发一个简单的node.js应用程序,它使用mongodb存储数据。我在向数据库添加新记录或使用ejs显示数据库记录方面没有任何问题。但是,我想在前端使用数据库中的数据(顺便说一句,是一个单词列表)。具体来说,我想将查询结果推送到一个数组中,我可以在前端js文件中使用这个数组。这可能吗 以下是获取路线: app.get("/wordlist", function (req, res) { Word.find({}, function(err, allWords){

我正在开发一个简单的node.js应用程序,它使用mongodb存储数据。我在向数据库添加新记录或使用ejs显示数据库记录方面没有任何问题。但是,我想在前端使用数据库中的数据(顺便说一句,是一个单词列表)。具体来说,我想将查询结果推送到一个数组中,我可以在前端js文件中使用这个数组。这可能吗

以下是获取路线:

 app.get("/wordlist", function (req, res) {
      Word.find({}, function(err, allWords){
        if(err){
          console.log(err);
        } else {
          res.render("index", {words: allWords});
        }
      });
    });
下面是我用来在ejs文件中显示数据的简单循环:

<% words.forEach(function(foo){ %>
  <p><%= foo.word + " " + foo.category + " " + foo._id %></p>
<% }); %>

非常感谢你

从技术上讲,
应该足够了,但是我的IDE在没有额外逻辑的情况下触发了一个错误,因为它不知道
解析为一个对象数组

另外,请注意使用
而不是

<script>
    var words = JSON.parse('<%- JSON.stringify(words) %>');
    console.log(words);
</script>

var words=JSON.parse(“”);
控制台日志(文字);

具体来说,我想将查询结果推送到数组中。-但它已经是一个数组了
allWords
是存储在
words
中的一个数组,它将传递给视图,因此
words
是一个数组。我不懂。对不起,我是初学者,所以我肯定我问得不对。让我再试一次。我将
allWords
存储在
words
中,但我只能在ejs标记中使用它。我想要的是能够在我的普通老javascript文件中使用
words
变量。换句话说,如果我在浏览器控制台中键入
words
,我希望看到变量的内容,而不是出现“未定义”错误。这有意义吗?还是我应该再试一次?啊!前端可能意味着很多事情,因此混乱。老兄,你就是炸弹网络!非常感谢你!