函数返回未定义的值

时间:2019-03-26 11:40:02

标签: javascript node.js

我有一个名为IsValidUrl()的函数,该函数根据情况(假或真)返回一些值。但是在此函数内部,我有另一个函数不允许将值传递给IsValidUrl()

var validUrl = await isValidUrl();

if (!validUrl) {
  console.log(validUrl); ** //validUrl is undefined**

  return res.status(404).send('not found');
}

function isValidUrl() {

  Post.findOne({
    url: req.params.path
  }, function(err, result) {
    if (err) {
      throw err
    } else if (!result) {
      return false
    } else {
      return true
    }
  })
}

如何将返回的值发送到IsValidUrl()

1 个答案:

答案 0 :(得分:0)

function isValidUrl() {
  return new Promise((resolve, reject) => {
    Post.findOne({
      url: req.params.path
    }, function(err, result) {
      if (err) {
        reject(err);
      } else if (!result) {
        resolve(false);
      } else {
        resolve(true);
      }
    })
  })

}