Я новичок в "Реактинге", и я все еще стараюсь найти лучшие практики, которые так несут меня.
Итак, скажем, у меня есть <ParentComponent/>
и <ChildComponent/>
и мне нужно следующее поведение: при нажатии на дочернее устройство что-то должно произойти.
Как я должен реализовать onClick
обработчик события для <ChildComponent/>
?
Должен ли я определить его внутри <ParentComponent/>
класса и передать его вниз к <ChildComponent/>
в качестве prop
использовать как onClick={this.props.handleClick}
или я должен определить его в <ChildComponent/>
и просто использовать это с onClick={this.handleClick}
?
Является ли один метод предпочтительным по сравнению с другим, или нет никакой разницы между тем, чтобы сделать это?
Это полностью зависит от того, что на самом деле делает метод. Если метод использует или изменяет состояние в родительском компоненте, определите его в родительском компоненте и передайте его в качестве реквизита. Если метод не имеет ничего общего с родительским компонентом или его состоянием, просто определите его в дочернем компоненте.