2017-10-21 2 views
0

Antdで行編集を実装しようとしています。編集リンクをクリックすると、行が展開され、ユーザー内のテキストエリアが入力できます。私は行の拡張をトリガする方法(+記号でonclickイベントハンドラが見られなかった)と展開された行要素へのアクセスを取得して、そこにフォームフィールドを非ハッキーな方法でスライドさせる方法を見つけられませんでした。Antdテーブルの行を展開してテキストエリアを内側に配置する

これは現在のコード-https://gist.github.com/llevar/8f9a68bcc15ab0e37defb14a5126c5adです。目標は、「編集」をクリックするとJSONを含む「設定」列をテキスト領域に表示させることです。

ありがとうございます。

答えて

1

onExpandedRowsChange小道具とonExpandを試しましたか?拡張された行のコールバックと拡張された行の変更にアクセスできるようにしました。

編集: 私はこれを試していませんが、expandedRowKeysと状態でプログラムで行を展開できるはずです。 expandedRowRenderを使用して条件付きで「表示モード」と「編集モード(テキスト領域)」をレンダリングしたり、保存領域を保存して「表示モード」に戻すことができます。

onExpand +アイコンを押すか、rowClickで行を展開してください。

+0

ご返信ありがとうございます。それは役に立ちますが、あなたが何を意味するのかを完全に理解しているかどうかはわかりません(10年後のJSワールドに戻ってきています)。私はonExpand()イベントを使用して、そこにフォームフィールドを配置する行への参照を取得し、onExpandedRowsChange()を使用してユーザーの入力を保存できることを示唆していると仮定しています。これは正しいですか?編集リンクを使用して展開を開始する方法についてはまだ分かりません。あなたの助けを前にありがとう。 – llevar

+0

私はいくつかの情報を追加しました。達成したいことを100%理解しているかどうかはわかりません。 – Kossel

+0

さて、私はそれをもう少し掘り下げましたが、それはうまくいきません。行インデックスを 'expandedRowKeys'にプッシュすると、行が展開されますが、行アイコン[+]は[ - ]に更新されません。私が見た唯一の方法は、 'expandRowByClick'や' expandAll'のような組み込みのメソッドを使うことでした。 'onExpand'はエキスパンドを起こさないが、エキスパンドが起こるとイベントが発生する。行インデックスを 'expandedRowKeys'にプッシュしても、' onExpand'は発生しません。これまでのところ私はそれを働かせることができません。また、編集モードと表示モードの実装をどのようにお勧めしますか?これは行の状態でなければなりませんが、どのように行にアクセスできますか? – llevar

関連する問題