GWT の Editor フレームワークは非常に便利で、POJOの編集だけでなく、読み取り専用表示にも使用できます。
ただし、インライン編集を行うためのベスト プラクティスが何であるかは完全にはわかりません。
を持っていて、を表示および編集するためのペアPersonProxy
が 1 つあるとします。この Presenter-View は、デフォルトで を読み取り専用モードで表示し、ユーザーが編集ボタンを押すと、ユーザーがオブジェクトを編集できるようにする必要があります。 Presenter-View
PersonProxy
PersonProxy
PersonProxy
私が思いついた解決策はPersonEditEditor
、. にはが含まれ
、 には normal が含まれます。
最初は を表示して非表示にします。PersonDisplayEditor
UiBinder
View
PersonEditEditor
ValueBoxEditorDecorator
PersonDisplayEditor
Labels
PersonDisplayEditor
PersonEditEditor
では、エディタごとView
に 2 つ作成し、インターフェイス経由でからアクセスできるようにします。 また、インターフェイスでメソッドを定義します。 RequestFactoryEditorDriver
Presenter
View
setState()
View
初めて が表示されたときは、とPresenter
を呼び出します。 PersonDisplayDriver.display()
setState(DISPLAYING)
ユーザーが[編集] ボタンをクリックするPersonEditDriver.edit()
とsetState(EDITING)
、Presenter
.
setState(EDITING)
を隠してPersonDisplayEditor
見えるようにしPersonEditEditor
ます。
これが最善のアプローチであるかどうかはわかりません。そうでない場合、インライン編集を行うための推奨されるアプローチは何ですか? エディタで単体テストを行う最良の方法は何ですか?