Я бы хотел вызвать функцию повторно в компоненте React с момента ее установки до тех пор, пока он не размонтирует и не запустит его с помощью webpack HMR (горячая перезагрузка).setInterval в компонентах React и горячей перезагрузке (Webpack)
Самый простой способ установить интервал в componentDidMount, как предложено в ReactJS документы: [1]: https://facebook.github.io/react/docs/component-specs.html#mounting-componentdidmount
componentDidMount() {
const number = Math.floor(Math.random() * 1000) + 1
setInterval(() => console.log('Component ' + number.toString()), 5000)
}
Я искал, но не может найти решение, чтобы очистить интервал перед тем WebPack HMR вызывает componentDidMount для нашего обновленного компонента. Это означает, что у нас есть новый интервал при каждом перезагрузке модуля.
Примечание: componentWillUnmount
не вызывается до Webpack rebundles
UPDATE: Rebundling должен вызывать componentWillUnmount
когда HMR правильно установлен
Что является лучшим способом для достижения повторной отсроченной функции вызывает с WebPack ГМРОМ?
componentWillUnmount – webdeb
Проблема в том, что 'componentWillUnmount' не называется до того, как веб-пакет будет возвращен. –