我具有根据条件设置一些状态值的功能。我需要调用此函数,然后立即检查这些状态。
class PaymentCard extends Component{
constructor(props) {
super(props);
this.state = {
amount: '0.00',
description: '',
amountError: null,
descriptionError: null,
};
}
handleDescriptionOnBlur = () => {
const value = this.state.description;
if ((!value || value === '' || value.length <= 0 )){
this.setState({descriptionError: 'REQUIRED'});
}
else {
this.setState({ descriptionError: null});
}
}
handleAmountOnBlur = () => {
let value = this.state.amount;
if (value === '0.00'){
this.setState({ amountError: 'REQUIRED' });
}
else {
this.setState({amountError: null});
}
}
runValidations = () => {
this.handleDescriptionOnBlur();
this.handleAmountOnBlur();
const { amount, description, amountError, descriptionError } = this.state;
if (!amountError && !descriptionError) {
this.props.getDetailCardValues({ amount, description });
}
}
render(){
}
}
在runValidations函数内部,条件 如果(!amountError &&!descriptionError), 此条件没有该状态的更新值。
答案 0 :(得分:0)
您可以使用react生命周期方法(componentDidMount和ComponentDidUpdate)来完成此操作,请查看react文档,以获取有关https://reactjs.org/docs/react-component.html
的更多信息