背景AOR:ユーザーがデータグリッドの行をクリックしたときにページを編集する方法は?
私は、RESTエンドポイントをレンダリングするためにAdmin on rest Datagridコンポーネントを使用しています。このように:
<Datagrid>
<TextField source="name" />
<TextField source="email" />
<EditButton />
</Datagrid>
EditButtonは、ユーザーを対応する編集ページにルーティングします。すべての作品は素晴らしいです。
質問
しかし、今、私はEditButtonを使用せず、代わりに行をクリックしたときに、編集ページへのルートユーザーをどのように動作するようにしようとしています。
私の最初のアイデア
私の試みはrowOption onCellClick
を使用することでした。
<Datagrid rowOptions={ {onClick: rowClick } } >
<TextField source="name" />
<TextField source="email" />
</Datagrid>
ハンドル関数は次のようになります。
const rowClick = (proxy, event) => {
console.log(proxy, event);
// how to get the resource id??
}
これは行のクリックをキャプチャし、イベントデータがコンソールに記録されます。しかし、私が見る限り、クリックイベントデータには行のRESTリソースIDに関する情報は含まれていません。
誰かが同様の操作を行うために行クリックイベントを使用しましたか?
また、このラッピングコンポーネントでTextFieldをラップしてクリックイベントハンドラを追加するための新しいコンポーネント(たとえばClickableField
)を作成する方が良いでしょうか?同様に、
<Datagrid>
<ClickableField><TextField source="name" /></ClickableField>
<ClickableField><TextField source="email" /></ClickableField>
</Datagrid>
素晴らしいです!ありがとう! – Ivar