Hacker News new | ask | show | jobs
by wwalser 3585 days ago
I don't understand why it returns a promise. Are some of the validators asynchronous (ex: call an outside resource and validate against the response)? All of the example appear to define validations that could be run synchronously.
1 comments

Two reasons: 1. It allows for asynchronous validation, see: http://technologyadvice.github.io/better-email-validation-wi... 2. It more cleanly supports the nature and flow of data i/o - in our use of Obey we are (almost) always following validation up with another async operation, i.e. obey.validate({}).then(...something else with the data...)
So the answer to the question "are some of the validators async?" is "Yes."

That makes perfect sense then, thanks! Looks like a great lib where async validators are needed.