Add extra invalid element info to invariant message
Andrew Clark committed
Feb 1, 2017 at 17:45 UTC
822587ea06b1578d41f8ffdd4f1ed782c222d3b1
1 file changed
+14
-1
src/renderers/dom/fiber/ReactDOMFiber.js
+14
-1
@@ -368,7 +368,20 @@ var ReactDOM = {
368
// allows arrays.
369
invariant(
370
isValidElement(element),
371
- 'render(): Invalid component element.'
371
+ 'ReactDOM.render(): Invalid component element.%s',
372
+ (
373
+ typeof element === 'string' ?
374
+ ' Instead of passing a string like \'div\', pass ' +
375
+ 'React.createElement(\'div\') or <div />.' :
376
+ typeof element === 'function' ?
377
+ ' Instead of passing a class like Foo, pass ' +
378
+ 'React.createElement(Foo) or <Foo />.' :
379
+ // Check if it quacks like an element
380
+ element != null && element.props !== undefined ?
381
+ ' This may be caused by unintentionally loading two independent ' +
382
+ 'copies of React.' :
383
+ ''
384
+ )
385
);
386
}
387