如何在ReactJS上停止SetInterval?

时间:2018-04-05 10:26:22

标签: javascript reactjs

我正在进行一些gps监控,但我遇到了问题,它无法停止间隔。

componentDidMount() {
    const self = this;
    self.map = self.createMap();
    self.monitoring();

    G.event.addListener(self.map, 'zoom_changed', () => self.handleZoomChange())
    self.intv = setInterval(() => {
        self.monitoring();
    },5e3);
}

componentDidUnMount() {
    G.event.clearListeners(map, 'zoom_changed')
}

那么如何修复呢?谢谢

1 个答案:

答案 0 :(得分:0)

您是否尝试过“clearInterval(self.intv);”?如果需要完成当前迭代,您还可以使用一些标志并在每次定时器迭代时检查。例如:

count