如何从另一个文件节点js

时间:2017-05-17 06:40:09

标签: javascript node.js

当我尝试在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);

我的终端未定义。你能帮我解决这个问题吗?

1 个答案:

答案 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语句,因为你未定义它。请在上面的代码段中找到更正。顺便说一句抱歉,我第一次尝试回答时完全弄错了。编辑了同一篇文章。干杯!