У меня есть образец кода для генерации дерева. Но он показывает ошибки, которые this.state.action
или this.onClickNode
не определены, пока я определил их все в конструкторе.«this.state» или методы недоступны в Reactjs
export default class TreeList extends React.Component {
constructor(props) {
super(props)
this.state = {tree: tree, action: null}
this.onClickNode = this.onClickNode.bind(this)
}
onClickNode(node) {
this.setState({active: node})
}
renderNode(node) {
console.log(this.state.action)
return (
<span onClick={this.onClickNode(null, node)}>
{node.module}
</span>
);
}
render() {
return (
<div>
<Tree tree={this.state.tree} renderNode={this.renderNode}/>
</div>
)
}
}
Я использовал эту библиотеку: https://pqx.github.io/react-ui-tree/
Возможно, вам нужно связать 'this' для функции' this.renderNode', например. This.renderNode = this.renderNode.bind (this) ' –
состояние недоступно через' onClickNode'? Кстати, вы знаете, что вы устанавливаете 'this.state.action' в' null' вместо 'node', потому что это ваш первый параметр внутри' onClickNode' .. – Ido
@ И да, это значение null, и оно должно возвращать «null», но вместо этого он возвращает undefined. – Mortezaipo