I want to set a timeout to go off X amount of seconds from now. If X changes, I want to clear the timeout and start a new timeout based on the new value of X. When I try to clear timeout it wont work. Here is my code
componentWillReceiveProps(nextProps) {
if (this.props.expirationTimeout !== nextProps.expirationTimeout) {
this.setState({
expirationTimeout: nextProps.expirationTimeout
});
window.clearTimeout(this.setExpiration);
this.setExpiration(nextProps.expirationTimeout);
}
}
setExpiration(time) {
let timeouts = [];
for (var i = 0; i < timeouts.length; i++) {
clearTimeout(timeouts[i]);
}
var t = time - new Date().getTime();
timeouts.push(setTimeout(this.state.logoutUserAndRedirect, t));
}