invariant
Last updated
Last updated
A mirror of Facebook's invariant
(e.g. React, flux).
A way to provide descriptive errors in development but generic errors in production.
With npm do:
invariant(condition, message)
Note: When process.env.NODE_ENV
is not production
, the message is required. If omitted, invariant
will throw regardless of the truthiness of the condition. When process.env.NODE_ENV
is production
, the message is optional – so they can be minified away.
When used with browserify, it'll use browser.js
(instead of invariant.js
) and the envify transform will inline the value of process.env.NODE_ENV
.
The node version is optimized around the performance implications of accessing process.env
. The value of process.env.NODE_ENV
is cached, and repeatedly used instead of reading process.env
. See Server rendering is slower with npm react #812