【发布时间】:2014-08-01 08:48:42
【问题描述】:
我对 express.js 和一般编程非常陌生。我正在尝试学习如何从数据库(Mongodb)中检索数据并将其发送到 html 文件或 javascript。我设法检索数据并 console.log 它。我有这段代码,它从数据库中获取名为“数据”的数组并控制台记录它。我想将位置数组的数据传递给我的 html 文件,以提醒该位置。我想我可以简单地将数据作为节点模块放在一个 javascript 文件中,然后在另一个 javascript 文件中调用该变量。现在我知道如果是翡翠,我可以很容易地在 res.render 之后添加变量。如果我使用 html 并且有一个单独的 javascript 文件,它将如何工作?
这是我的 app.js 代码:
var placeFinder = require ("./public/assets/js/data.js");
app.get('/test', function(req, res){
placeFinder(function(err, data){
if(err){
return res.send(500);
}
res.locals.place = data;
console.log(data);
res.render('test', {data: data});
});
});
这是我的 data.js 代码:
var mongoose = require ('mongoose');
function getPlaces(callback){
var data = new Array();
mongoose.model('stories').find({},function(err, companies) {
if(err){
return callback(err, data);
}
for (var i = 0; i < companies.length; i++) {
data[i] = JSON.stringify(companies[i].place);
}
return callback(null, data);
});
}
module.exports = getPlaces;
这是我的带有js代码的html:
<html>
<head>
<title>test</title>
<script>
$('button.showlocation').click( function(){
var new = {{data}};
document.write(new);
}
</script>
</head>
<body>
<button class="showlocation btn btn-info">Click Here!</button>
</body>
</html>
非常感谢
【问题讨论】:
标签: javascript html node.js express