workshopper / learnyounode

Learn You The Node.js For Much Win! An intro to Node.js via a set of self-guided workshops.
Other
7.25k stars 1.84k forks source link

Strange Error in Exercise 6 of 13 (make it modular) #516

Closed Adoroam closed 7 years ago

Adoroam commented 7 years ago

https://gyazo.com/ff1e6c88e23ce98ddf656309ce80d9f4 my code: mod.js

const fs = require('fs')

module.exports = function (dir, ext, cb) {
  fs.readdir(dir, (err, list) => {
    if (err) {
      return cb(err)
    }
    let filteredItems = list.filter(li => li.endsWith(`.${ext}`) === true)
    filteredItems.forEach(item => cb(item))
  })
}

start.js

const mod = require('./mod')

let dir = process.argv[2]
let ext = process.argv[3]
mod(dir, ext, (item, err) => {
  if (err) console.error(err)
  console.log(item)
})
Adoroam commented 7 years ago

Fixed it! revised code: mod.js

const mod = require('./mod')

let dir = process.argv[2]
let ext = process.argv[3]
mod(dir, ext, (err, items) => {
  if (err) console.error(err)
  items.forEach(item => console.log(item))
})

start.js

const mod = require('./mod')

let dir = process.argv[2]
let ext = process.argv[3]
mod(dir, ext, (err, items) => {
  if (err) console.error(err)
  items.forEach(item => console.log(item))
})