当我尝试在nodejs程序中使用来自另一个文件的数据时,我遇到了问题 这个例子是这样的。
const Search = require('./model/Search');
getData = () => {
let result = []
Search.find({}, (err, data) => {
if (err) {
console.log(err);
}
for (let i = 0; i < data.length; i++) {
result.push = data[i].title;
}
});
return result;
}
我会在另一个文件中得到结果
const coba = require('./data');
console.log(coba);
我的终端未定义。你能帮我解决这个问题吗?
答案 0 :(得分:0)
getData = () => {
let result = []
Search.find({}, (err, data) => {
if (err) {
console.log(err);
}
for (let i = 0; i < data.length; i++) {
result.push = data[i].title;
}
// return statement should be inside Search.find callback
return result;
});
}
嗨,您的Search.find是异步函数,因为它从DB中获取结果。并且你在异步函数之外有你的return语句,因为你未定义它。请在上面的代码段中找到更正。顺便说一句抱歉,我第一次尝试回答时完全弄错了。编辑了同一篇文章。干杯!