Higher-order functions for easier error handling
npm install iferrHigher-order functions for easier error handling.
if (err) return cb(err); be gone!
bash
npm install iferr
`Use
$3
`js
var iferr = require('iferr');function get_friends_count(id, cb) {
User.load_user(id, iferr(cb, user =>
user.load_friends(iferr(cb, friends =>
cb(null, friends.length)
))
))
}
`$3
`js
var iferr = require('iferr');function get_friends_count(id, cb) {
User.load_user(id, iferr(cb, function(user) {
user.load_friends(iferr(cb, function(friends) {
cb(null, friends.length)
}))
}))
}
`$3
`coffee
iferr = require 'iferr'get_friends_count = (id, cb) ->
User.load_user id, iferr cb, (user) ->
user.load_friends iferr cb, (friends) ->
cb null, friends.length
``(TODO: document tiferr, throwerr and printerr)