Я разработал онлайн-форму Sharepoint, использующую реагирование.Sharepoint Online использует одну страницу, такую как навигация, что означает отсутствие реальной перезагрузки / обновления страницы.
Форма загружает данные через запрос http.Но состояние показывает содержащие старые данные.Только после жесткого обновления / очистки кэша состояние содержит правильные данные.
Мои проблемы заключаются в том, что из-за навигации мое состояние реакции не обновляется должным образом.Я получаю данные асинхронно:
public componentDidMount(): void {
this._renderListAsync();
}
_renderListAsync()
делает http-запросы и устанавливает состояние:
._renderListAsync()
.get("xxx.xxx.xxx") // HTTP request
.then((response) => {
this.setState({item:response});
}
Цель состоит в том, чтобы загружать данные каждый раз, когда пользователи переходят ксайт.
Когда я очищаю кеш и выполняю полную перезагрузку, мои состояния обновляются до правильного.
Но когда пользователи перемещаются между различными сайтами, React просто добавляет больше компонентов:
![enter image description here](https://i.stack.imgur.com/StnB8.png)
Предназначено ли это?
Как я могу убедиться, что состояние обновляется правильно, и что я размонтирую старые компоненты?