これらの親コンポーネントと子コンポーネントがあるため、子コンポーネントの項目を選択するためにクリック機能を渡します。それでも、ユーザーが要素をクリックするまで待つのではなく、子コンポーネントの関数が自動的に呼び出されるようです。それをより明確にするには、ここに私の親と子コンポーネント子コンポーネント内の矢印関数を使用したパラメータの反復
export class ParentView extends Component {
state = {
selectedItem: {}
}
handleClick = (item) => {
alert('you click me');
this.setState({selectedItem: item});
}
render() {
let item = { name: 'Item-1' };
return (
<div>
<ChildItem item={item} handleClick={this.handleClick} />
</div>
);
}
}
export class ChildItem extends Component {
render() {
const {item, handleClick} = this.props;
return (
<div>
<a onClick={handleClick(item)} />
</div>
);
}
}
者は、子コンポーネントにを渡すために、矢印の機能を使用して、私のコンポーネントである、まだ常に最初に呼び出されるアラートは、ユーザによってトリガされずにレンダリングされます。なにか提案を?
ありがとうございます、私は 'onClick = {()=> handleClick(item)}' –