现在我使用express连接Node.js和mongodb以及查询数据库。假设有一个名为Animal
的模式,它有一个名为traits
的数组字段。当我查询:
db.animals.distinct("traits")
我的结果是:
['playful', 'funny', 'lazy', 'loyal']
我是否有可能将此结果传递给变量供以后使用?非常感谢。
答案 0 :(得分:0)
是。您可以将查询结果分配给变量。像这样:
var a;
db.collection('animals', function(err, collection) {
collection.distinct("traits", function(err, results) {
a = results;
console.log(results);
});
});
答案 1 :(得分:0)
首先按npm install client-sessions
在主js页面中调用它
var session = require('client-sessions');
给出定义
app.use(session({
cookieName: 'session',
secret: 'random_string_goes_here',
duration: 30 * 60 * 1000,
activeDuration: 5 * 60 * 1000,
}));
将结果存储在名为animals
的会话中 app.post('/getAnimals', function(req, res) {
// inside your DB query callback{}
req.session.animals= db.animals.distinct("traits")
})
在需要时从会话中检索数据
console.log(req.session.animals); //will give
['playful', 'funny', 'lazy', 'loyal']
console.log(req.session.animals[0]); // will give first element
playful
如果此解决方案解决了您的问题,请告诉我:)?