Я создаю древовидную структуру в React, когда я нажимаю правую кнопку в любом списке элементов, появляется контекстное меню, и там у меня есть различные варианты на выбор. Когда я нажимаю на любой из вариантов, появляется модальный.
И он работает. Однако ситуация меняется, когда вместо задания жестко созданной древовидной структуры я ввожу дерево, загруженное с сервера (переданное с помощью redux). Затем внезапно после нажатия на параметры из контекстного меню модальное окно не появляется.
До:
componentDidMount(){
//this.props.getTree()
document.addEventListener('click', this.hideContextMenu.bind(this))
}
componentWillUnmount(){
document.removeEventListener('click',this.hideContextMenu.bind(this))
}
<Container>
{this.renderSubNodes(treeFromConst)}
После изменения передать дерево с сервера:
componentDidMount(){
this.props.getTree()
document.addEventListener('click', this.hideContextMenu.bind(this))
}
componentWillUnmount(){
document.removeEventListener('click',this.hideContextMenu.bind(this))
}
<Container>
{treeFromServer && this.renderSubNodes(treeFromServer)}
Вот ссылка на CodeSandbox. Я передаю дерево из const - https://codesandbox.io/s/github/krystianwolanski/ReactAndAspCoreTreeStructure/tree/master/ClientApp?file= / src / TreePage / TreePage. js
Что не так? Устал уже несколько дней