2017-10-21 126 views
0

我想用Antd實現行編輯,當我點擊編輯鏈接時,行展開並在用戶內部有一個textarea可以輸入。我一直無法弄清楚如何觸發行擴展(在+號上沒有看到任何onclick事件處理程序),也沒有辦法如何訪問擴展行元素以非哈希方式在其中滑動表單字段。Antd表展開行並放置textarea裏面

這是當前的代碼 - https://gist.github.com/llevar/8f9a68bcc15ab0e37defb14a5126c5ad。我們的目標是在點擊編輯後將JSON列放在文本區域中。

在此先感謝。

回答

1

你試過 onExpandedRowsChange道具和onExpand他們讓你訪問擴展行回調和擴展行更改。

編輯: 我還沒有嘗試這個,但我認爲你應該能夠以編程方式擴大行expandedRowKeys和狀態。並使用expandedRowRender有條件地呈現「視圖模式」和「編輯模式(文本區)」,你也可以添加一個Save按鈕保存textarea的值,並把它返回到「視圖模式」

onExpand是觸發時您按+圖標(或通過rowClick擴展行)

+0

感謝您的回覆。這很有幫助,但我不確定我對你的意思有了充分的理解(在經歷了10年的中斷後,新回到JS世界)。我假設你建議使用onExpand()事件,我會得到一個行的引用來放置一個表單域,並使用onExpandedRowsChange()我可以保存用戶的輸入。這是正確的嗎?我仍然不清楚如何使用編輯鏈接觸發展開。在此先感謝您的幫助。 – llevar

+0

我添加了一些信息,我不知道我是否理解100%你想達到的目標。 – Kossel

+0

那麼,我已經深入瞭解它,它不工作。將行索引推入'expandedRowKeys'確實會擴展行,但不會將行圖標[+]更新爲[ - ]。我見過它的唯一方法是使用像expandRowByClick和expandAll這樣的內置方法。 'onExpand'不會導致擴展,但會在擴展發生時觸發事件。將行索引推入'expandedRowKeys'不會觸發'onExpand'。到目前爲止,我不能讓它工作。另外,你如何建議實現編輯和查看模式?這應該是我認爲的Row狀態,但是如何訪問該行? – llevar