diff --git a/src/renderers/shared/utils/validateCallback.js b/src/renderers/shared/utils/validateCallback.js index 64da06082c..65c0260db9 100644 --- a/src/renderers/shared/utils/validateCallback.js +++ b/src/renderers/shared/utils/validateCallback.js @@ -28,13 +28,19 @@ function formatUnexpectedArgument(arg: any) { } function validateCallback(callback: ?Function, callerName: string) { - invariant( - !callback || typeof callback === 'function', - '%s(...): Expected the last optional `callback` argument to be a ' + - 'function. Instead received: %s.', - callerName, - formatUnexpectedArgument(callback) - ); + if ( + callback !== null && + callback !== undefined && + typeof callback !== 'function' + ) { + invariant( + false, + '%s(...): Expected the last optional `callback` argument to be a ' + + 'function. Instead received: %s.', + callerName, + formatUnexpectedArgument(callback) + ); + } } module.exports = validateCallback;