Return upon another file check

checks.js is returning an AsyncFunction, you must await it.

checks.js:

module.exports = async (content) => {
  // Check no.1
  if (content.id != 'SomeID') return;
  // Check no.2
  if (content.length > 20) return;
  //..etc

  return true // maybe your not returning truthy?
}

index.js:

const checks = require('./checks');

(async () => {

  console.log('typeof checks()', typeof checks);
  console.log('instance of', checks.constructor.name);

  //
  let content = {
    id: 'SomeID'
  };

  if (await checks(content)) {
    console.log('1. passed');
  } else {
    console.log('1. failed');
  }

  //
  content = {
    id: 'WrongID'
  };

  if (await checks(content)) {
    console.log('2. passed');
  } else {
    console.log('2. failed');
  }
})();

Will output when run:

typeof checks() function
instance of AsyncFunction
1. passed
2. failed
 

See Understanding async/await on NodeJS for more details.

CLICK HERE to find out more related problems solutions.

Leave a Comment

Your email address will not be published.

Scroll to Top