在下面的代码中,当我尝试控制台记录数据对象时,它返回正确的用户名和密码,如下所示。
[ { _id: 5b7d6366db5064296cbeb79c,
username: 'ajith',
password: 'sdf2343@3e!',
__v: 0 } ]
但是 data.username 的控制台日志返回未定义。为什么会发生这种情况?为什么它没有返回值?
var express = require('express');
var app = express();
var mongoose = require('mongoose');
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({extended:true}));
mongoose.connect
("mongodb://<user>:<pass>@ds129762.mlab.com:29762/<dbnmae>")
var userSchema = new mongoose.Schema({
username : String,
password : String
});
var User = mongoose.model("User",userSchema);
app.get("/",function(req,res){
User.find({"username": "ajith"},function(err,data){
if(err){
console.log(err);
}else{
console.log(data);
console.log(data.password+" "+data._id);
}
});
});
app.listen(3000,function(){
console.log("server started and listening at the port 3000");
});
您必须使用data[0].username
因为data
是一个包含单个值的数组。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句