У меня установлен таймер обратного отсчета каждые 20 секунд, отображается предупреждение и выбор для продления таймера или отмены. Каждый раз, когда я перехожу на другой экран в моем приложении и возвращаюсь на домашнюю страницу, таймер продолжает сбрасываться сам, и в фоновом режиме будет несколько таймеров, а затем несколько запросов. Это относится даже к расширению таймера.
Как я могу остановить его сброс настроек таймера каждый раз, когда я прохожу другой экран в приложении и держу его на одном таймере?
Пожалуйста, посмотрите мойпример кода:
import CountDown from 'react-native-countdown-component';
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = {
timer: 20,
};
}
};
timesUp = () => {
Alert.alert(
"ALERT ",
'Would you like to extend timer?',
[
{
text: 'Extend Timer',
onPress: () =>
this.setState(previousState => ({
timerId: ++previousState.timerId,
})),
},
{
text: 'Cancel',
onPress: () => console.log('Cancel Pressed'),
},
],
{ cancelable: false }
);
};
render(){
return(
<View style={styles.countdownContainer}>
<CountDown
id={this.state.timerId}
until={this.state.timer}
onFinish={this.timesUp}
timeToShow={['M', 'S']}
digitStyle={{ backgroundColor: '#FFF' }}
size={20}
/>
</View>
);
}