그래서 여기 내 함수의는 Reactjs
constructor()
{
this.remove = this.remove.bind(this);
}
render()
{
return (
<div>
{ this.state.search.map((item, index) =>
(
<button key={index} onClick={this.remove(item)}>{item.search}: {item.text}</button>
))
}
</div>
</div>
);
}
하지만 제대로 작동하면 생성자에서 바인딩을 제거하고 (사실 상관 없음)이 단추를 다음과 같이 변경하십시오.
<button key={index} onClick={this.remove.bind(this, item)}>{item.search}: {item.text}</button>
내 궁금한 점은 매개 변수를 사용할 수 있도록 생성자에서 바인딩하는 방법이 있습니까?
난 그냥 더 나은 시작을 결합하는 원칙을 실천 한 것을 읽어 : 맞아요 –
\하지만 소품 (그러므로 더 아래 함수 생성을 밀어)로
item
소요 다른 구성 요소와 단추를 포장 함수를 다른 구성 요소로 직접 전달하는 경우에만 작동합니다. 그것에 대해 생각해보십시오 : * this * remove * 함수가 있습니다. 이 함수가 다른'item' 값으로 * n 번 * 실행되기를 원합니다. 올바른'item' 값으로'this.remove'를 호출하는 * n * 함수를 생성하거나 함수 호출을 스택 아래로 더 밀어 넣어야합니다. –해명 해 주셔서 감사합니다. –