使用npm MongoDB(MongoDB本机驱动器)“ mongodb”:“ ^ 3.1.8”,
当我使用Robo 3T获取数组的大小时,它可以正常工作,并且我可以获取数组的长度。但是,我在nodejs中不断收到以下错误:
UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'length' of undefined
这里是错误,长度:
const getLength = (query) => {
db = Connection.db.collection('tweets');
return new Promise((resolve, reject) => {
let lengthOfData = db.findOne({key: query}).tweets.length
resolve(lengthOfData);
});
}
这是Robo 3T中的查询图:
答案 0 :(得分:0)
FindOne已经返回了承诺(http://mongodb.github.io/node-mongodb-native/3.1/api/Collection.html#findOne):
const getLength = key => Connection
.db
.collection('tweets')
.findOne({ key })
.then(item => item.tweets.length);