react-loader-advanced
react-loader-advanced copied to clipboard
Possible EventEmitter memory leak detected
possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
Every instance of Loader adds a 'change' event listener in componentDidMount to the same EventEmitter. By default, if over 10 listeners are added with the same type (i.e. 'change') to a EventEmitter, events.js throws this error (should be warning imo) in the console.
It is a common scenario to use more than 10 loaders on one page, for example a dashboard of multiple async cards.
To reproduce, simply mount multiple loaders. (Code below untested)
import React from 'react'
import ReactDOM from 'react-dom'
import Loader from 'react-loader-advanced'
const App = () => (
<div>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
<Loader show><div /></Loader>
</div>
)
ReactDOM.render(<App />, document.body)
This could be fixed in v1.7.0
(I did not test).