Ответ на вопрос setState
работает несмотря на предупреждение. Предупреждение происходит только после удаления компонента, на котором я звоню setState
, а затем повторно. Почему я получаю это предупреждение , когда компонент уже установлен?реагировать: «Может обновлять только смонтированный или монтажный компонент».
<div id="contentArea">
{this.state.activePlugin?this.state.activePlugin.render():null}
</div>
визуализации метод возвращает элемент среагировать:
render(){
return <DatasetsList />;
}
state.activePlugin
устанавливается в нуль, и компонент, содержащий код JSX выше rerendered, это то, как извлекать «» activePlugin происходит. Когда render
вызывается снова, и второй раз возвращает <DatasetsList />
, последующие щелчки внутри компонента вызывают это предупреждение, несмотря на то, что вызванные им вызовы setState
фактически работают так, как ожидалось.
Другими словами, предупреждение, похоже, вводит в заблуждение, так как код работает должным образом.
componentDidMount() {
this.unsubscribe = this.props.store.listen(s=>{
this.setState(s);
});
}
Не можете добавить комментарий к своему фрагменту кода? – WitVault
Добавлен код. – Tom
, но вам не удалось добавить код, который вызывает 'setState' – Brandon