Javascript 通过nodejs和express从mongodb获取数据到html页面
基本上,我希望将“employees”集合中的特定字段显示到html页面中。但即使在网上搜索了很多,我也无法做到这一点 以下是server.js文件中的路由部分:Javascript 通过nodejs和express从mongodb获取数据到html页面,javascript,angularjs,node.js,mongodb,express,Javascript,Angularjs,Node.js,Mongodb,Express,基本上,我希望将“employees”集合中的特定字段显示到html页面中。但即使在网上搜索了很多,我也无法做到这一点 以下是server.js文件中的路由部分: app.get('/fetching', function(req, res){ connection.fetcher(function(data) { res.render("testing.html",data); } ); }); 下面是connectio
app.get('/fetching', function(req, res){
connection.fetcher(function(data)
{
res.render("testing.html",data);
}
);
});
下面是connection.js文件的一部分:
var fetcher= function(callback) {
var mongodb = require('mongodb');
var MongoClient = mongodb.MongoClient;
var url = 'mongodb://localhost:27017/HippoFeedo';
MongoClient.connect(url, function (err, db) {
if (err) {
console.log('Unable to connect to the mongoDB server. Error:', err);
}
else {
console.log('Connection established to', url);
// Get the documents collection
var collection = db.collection('employees');
collection.find({},function (err, result) {
if (err) {
console.log(err);
} else {
console.log(result);
callback(result);
}
});
}
});
现在,findOne工作正常,将值完美地返回到server.js
文件。但是我需要使用“find”,那么如何通过回调将整个数组发送到server.js
此外,我需要通过渲染将从server.js
检索到的数据发送到名为testing.HTML
的HTML文件,并通过js显示。请解释一种简单的方法
编辑:
我开始知道如何使用“find”,我只是在函数中使用了“toArray”和“find”。现在,我可以通过回调将值返回到server.js。但另一个问题仍未解决:如何将这些值传递到html页面?使用ejs,您需要设置视图引擎:
app.set('view engine', 'ejs');
然后获取您的数据:
app.get('/employees',(req , res) =>{
db.collection('employees').find().toArray(function(err , i){
if (err) return console.log(err)
res.render('index.ejs',{employees: i})
})
});
.ejs文件如下所示:
employees
<ul class="employees">
<% for(var i=0; i<employees.length; i++) {%>
<li class="employees">
<span><%= " Nome: " +employees[i].name+"."%></span>
<span><%=" Address: " + employees[i].address%></span>
</li>
<% } %>
</ul>
员工
你可以通过jade在UI端填充数据,我不想使用jade或ejs。。使用angularjs或jquery可以做到这一点吗?