пропустил?
onClick={() => this.props.onClick()}
https://cdb.reacttraining.com/react-inline-functions-and-performance-bdff784f5578
не надо писать так onClick={() => this.props.onClick()}
ты каждый раз кидаешь новую пропсу во втором варианте
Без типизации лучше второе, потому что кривые аргументы могут прийти.
При каждом рендере создает новый контекст для функции и это плохая практика. Но это не точно, может ктото уточнить?
что значит модно/не модно сам же привёл статью, где всё аргументировано хорошо
пара советов есть на эту тему но все они сводятся к контексту использоания () => this.handleClick() юзается если ты описал хендлер как метод, а не как проперти ещё юзается, когда порядок аргументов не устраивает. например есть некоторые библиотеки которые в onClick бросают value, props, event и тебе хочется поменять порядок onClick={(value, props, event) => props.someClick(event, value)} но всё это полностью убивает PureComponent, так как на каждый рендер будет новая функция. И не дай бог ты в замыкании хендлера прокинул какие-то важные данные, например список. А в sCU компонента этот пропс с функцией не проверяешь, то будут ОЧЕНЬ странные эффекты. кейс onClick={props.handlerClick} лучше использовать в большинстве возможных случаев, он легко проверяется в Pure и sCU. Не городит новых функций. Но в нем сложнее отследить пробрасываемые параметры. У себя в проекте я решил, что в хендлерах всегда должен пробрасывать первым аргументом event
Обсуждают сегодня