最近 React の学習を始めました。コンポーネントにデータ グリッドがあり、行をクリックするとイベントがトリガーされます。イベント ハンドラーでは、行の小道具 (クリックされた行の各列からの値) を取得できます。だから私が達成したかったのは、グリッド内の行のonClickを有効にするフォームコンポーネントに3つのボタンがあることです。グリッドで選択された行に対してさまざまなアクションを実行する各ボタンの onClick で新しいページに移動したいと考えています。私が直面している問題は、これらのボタンを使用してさまざまな操作を実行するために行の値が必要なため、3 つのボタンすべてのハンドラーに行の小道具を渡すにはどうすればよいかということです。
onRowclick = (row) =>
{
this.context.route.push(`path\${row.ID}`);
}
onButton1click = (row) =>
{
this.context.route.push(`path\${row.ID}`);
}
.
.
.
onButton3click = (row) =>
{
this.context.route.push(`path\${row.ID}`);
}
3 つのイベント ハンドラーすべてで row.ID が必要です。コンポーネント全体でこれを使用できるように、これを状態に格納する方法はありますか?
更新:以下はこれを達成するためのコードです
constructor(props) {
super(props);
this.state = this.getInitState(props);
this.intitialize();
}
intitialize(){
this.selectedRow = {};
}
getInitState(props) {
return {selectedRow: undefined};
}
// on Row click storing the row object(which contains row data)
onRowClick = (row) => {
this.selectedRow = row;
}
Reactの非常に基本的な