setup-php/node_modules/invariant
Shivam Mathur 8f9786b73f init
2019-09-06 05:17:43 +05:30
..
browser.js init 2019-09-06 05:17:43 +05:30
CHANGELOG.md init 2019-09-06 05:17:43 +05:30
invariant.js init 2019-09-06 05:17:43 +05:30
invariant.js.flow init 2019-09-06 05:17:43 +05:30
LICENSE init 2019-09-06 05:17:43 +05:30
package.json init 2019-09-06 05:17:43 +05:30
README.md init 2019-09-06 05:17:43 +05:30

invariant

Build Status

A mirror of Facebook's invariant (e.g. React, flux).

A way to provide descriptive errors in development but generic errors in production.

Install

With npm do:

npm install invariant

invariant(condition, message)

var invariant = require('invariant');

invariant(someTruthyVal, 'This will not throw');
// No errors

invariant(someFalseyVal, 'This will throw an error with this message');
// Error: Invariant Violation: This will throw an error with this 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.

Browser

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.

Node

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