【发布时间】:2023-04-09 04:30:01
【问题描述】:
有很多类似的问题,虽然我在这里贴出来。
我收到以下错误:
未捕获的不变违规:超过最大更新深度。当组件在 componentWillUpdate 或 componentDidUpdate 中重复调用 setState 时,可能会发生这种情况。 React 限制了嵌套更新的数量以防止无限循环。
请注意,我没有在页面中使用过此类功能。
选择Datepicker时出错:
constructor(props){
super(props);
this.state={
fields: {},
errors: {}
}
}
handleIssueDate(date){
// this.state.IssueDate = moment(date).format("YYYY-MM-DD")
debugger;
let fields = this.state.fields;
fields["IssueDate"] = moment(date).format("YYYY-MM-DD")
this.setState({
fields
});
let errors = this.state.errors;
if (errors[date] != "" || errors[date] != null) {
errors["IssueDate"] = "";
}
}
render(){
return (
<DatePicker name="IssueDate" onChange={this.handleIssueDate} selected={this.state.fields.IssueDate} value={this.state.fields.IssueDate} placeholderText={"YYYY-MM-DD"} />)
}
编辑: 我刚刚从 setState 中删除了 moment 函数。现在它工作正常。请任何人解释这个奇怪的错误/行为。
【问题讨论】:
标签: reactjs