Express 将数据从mongodb推送到前端阵列
我正在开发一个简单的node.js应用程序,它使用mongodb存储数据。我在向数据库添加新记录或使用ejs显示数据库记录方面没有任何问题。但是,我想在前端使用数据库中的数据(顺便说一句,是一个单词列表)。具体来说,我想将查询结果推送到一个数组中,我可以在前端js文件中使用这个数组。这可能吗 以下是获取路线:Express 将数据从mongodb推送到前端阵列,express,ejs,Express,Ejs,我正在开发一个简单的node.js应用程序,它使用mongodb存储数据。我在向数据库添加新记录或使用ejs显示数据库记录方面没有任何问题。但是,我想在前端使用数据库中的数据(顺便说一句,是一个单词列表)。具体来说,我想将查询结果推送到一个数组中,我可以在前端js文件中使用这个数组。这可能吗 以下是获取路线: app.get("/wordlist", function (req, res) { Word.find({}, function(err, allWords){
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
,我希望看到变量的内容,而不是出现“未定义”错误。这有意义吗?还是我应该再试一次?啊!前端可能意味着很多事情,因此混乱。老兄,你就是炸弹网络!非常感谢你!