Closed Farzannajipour closed 5 years ago
I've used Countdown on my project and it works like a charm. but when I combined it with simple input, it would be restart whenever my input changes. I want to restart it only and only if time over. Here is my code:
import React from 'react'; import { Input } from 'reactstrap'; import Countdown from 'react-countdown-now'; import { connect } from 'react-redux'; class Foo extends React.Component { constructor(props) { super(props); this.state = { code: '', disabled: false, }; this.update = this.update.bind(this); } update(e) { this.setState({ code: e.target.value }); } render() { return ( <div> <Input className="text-center activationCode__letter-spacing" maxLength="4" type="text" pattern="\d*" id="activationCode__input-fourth" bsSize="lg" value={this.state.code} onChange={this.update} />{' '} <Countdown date={Date.now() + 120000} renderer={renderer} /> </div> ); } } const renderer = ({ minutes, seconds, completed }) => { if (completed) { return <p>reset</p>; } return ( <p> {minutes}:{seconds} </p> ); }; const mapStateToProps = state => ({ user: state.auth, }); export default connect( mapStateToProps, null, )(Foo);
I've used Countdown on my project and it works like a charm. but when I combined it with simple input, it would be restart whenever my input changes. I want to restart it only and only if time over. Here is my code: