https://github.com/jaykan/react-multiple-renderers-error
A demo repo to demonstrate multiple renderers error working with Context API
https://github.com/jaykan/react-multiple-renderers-error
Last synced: 3 months ago
JSON representation
A demo repo to demonstrate multiple renderers error working with Context API
- Host: GitHub
- URL: https://github.com/jaykan/react-multiple-renderers-error
- Owner: JayKan
- Created: 2018-07-09T07:22:23.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-07-09T07:34:32.000Z (over 7 years ago)
- Last Synced: 2025-07-03T09:45:50.053Z (6 months ago)
- Language: JavaScript
- Size: 194 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ReactDOM.render() + React.createContext() Multiple Renderers Error
> Warning: Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.
The above warning occurs __only__ when you have `ReactDOM.render()` and `TestRenderer` (react-test-renderer) coexists within your test file. For instance:
```javascript
// This is my actual App.test.js file
describe('App', () => {
it('renders without crashing', () => {
const div = document.createElement('div');
ReactDOM.render(, div); // comment out this line to get rid of errors
ReactDOM.unmountComponentAtNode(div); // no need to comment out this one
});
describe('#react-test-renderer working with React.render() :(', () => {
const makeComponent = props => TestRenderer.create();
it('started to fail', () => {
const component = makeComponent({ level: 1, maxLevel: 20 });
const instance = component.getInstance();
expect(instance.state.level).toBe(1);
expect(instance.state.maxLevel).toBe(20);
});
});
});
// When you `npm t` or `yarn test`, you will get a warning from above
// However, if you comment out ReactDOM.render(, div) line, warning disappears
```