나는 다음과 같은 포함하는 반작용 구성 요소의 onClick
소품을 가지고 : Lodash의 _.bind에 해당하는 바닐라 자바 스크립트는 무엇입니까?
onClick={_.bind(this.callMe, this, argToPass)}
이 명심,이 React.createClass를 사용하는 반작용 구성 요소, 그래서 그것의에 구성 요소의 기능을 결합한다 문맥. 불행하게도
, 나는 다음을 수행하여이 바인딩을 시도 :
onClick={this.callMe(argToPass)}
그것은 내 테스트 중 하나 나옵니다.
나는 그것이 같은 소품으로 전달 된 것으로 바인딩하지 않으 : 성능 문제의
onClick={this.callMe(argToPass).bind(this)}
B/C. 함수가 제대로 결합 할 수
_.bind(this.callMe, this, argToPass)
:
은 바닐라의 자바 스크립트 상응하는 무엇입니까.
감사합니다.
Dude. 누가 설명없이 downvote? 이는 환상적인 팀에서의 제작 과정에서 진정한 의문입니다. –
_ 나는 그것을 묶고 싶지 않습니다 :'this.callMe (argToPass) .bind (this)'성능 문제의 b/c. - 그게 정확하지 않기 때문에? 왜냐하면'this.callMe()'가 함수를 반환하지 않는다면 에러를 던지기 때문에, 그렇다고해도 여전히 버그가있을 것입니다. ** 알림 ** 나는 downvoted하지 않았습니다, 나는 단지 코멘트입니다. –
성능 문제가 있으며 해당 표기법을 사용하여 해당 구성 요소의 컨텍스트에 함수를 바인딩하지 않으려합니다. Ref : https://daveceddia.com/avoid-bind-when-passing-props/ –