Я пытаюсь открыть модал при загрузке страницы, но получаю Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.
Я знаю, почему это происходит, потому что об этом много сообщений.Я не знаю, как это исправить.
Я использую UI материала модальный
Я пытался загрузить его в componentDidMount
- ошибка вызвана,Я пытался также использовать onClick и симулировать щелчок, чтобы открыть его, но это не сработало - не смог заставить симуляцию работать.Ниже моя последняя попытка - вызванная ошибка.
<Button onLoad={this.openModal.bind(this)()}>Open Modal</Button>
openModal(e) {
this.setState({
open:true
})
}
Кажется, я не могу обойти ошибку и открыть модальное при загрузке.
В модальном файле сам модальный выглядитвот так:
<Button onLoad={this.openModal.bind(this)()}>Open Modal</Button>
<Modal
aria-labelledby="simple-modal-title"
aria-describedby="simple-modal-description"
open={this.state.open}
onClose={this.handleClose}
>
В родительском компоненте
<Modal open={this.state.modalState}/> //=> true
Я тоже это попробовал (с удаленным обработчиком событий, который не вызывается this.openModal.bind(this)()
).Получил ошибку
componentDidUpdate(){
this.setState({
open:this.props.open
})
}