0

PlaceHistoryHandler#DefaultHistorianのGWT JavaDocはあいまいで、循環的です。

PlaceHistoryHandler.DefaultHistorianのデフォルトの実装。

これは、それが何であるか、またはそれが何をするかを実際に教えてくれません!

次に、PlaceHistoryMapperオブジェクトとActivityMapperオブジェクトがあります。私の理解では、PlaceHistoryMapperの仕事はURLトークンをにマップすることPlaceであり、ActivityMapperそれらPlaceActvitity実装にマップすることです。

だから私は尋ねます:これらの2つのマッパーがURLトークンを特定のにバインドすることを処理する場合、これらすべてでActivityどのような役割を果たしDefaultHistorianますか?

4

1 に答える 1

1

Javadocは、読み取り時に簡単に修正できます。DefaultHistorianこれは、のデフォルトの実装ですHistorian

それらがすべて一緒にどのように機能するかを理解するには、まず、場所が歴史なしで、また活動なしで機能する可能性があることを理解する必要があります。

したがって、中心的な場所は場所です:PlaceController現在のPlacegetWhere)を保持します。これは、によって変更でき、goTo変更イベントを。にブロードキャストしますEventBus。リスナーは、 (デフォルトの実装では)を介して( PlaceChangeRequestEvent's )を確認するようにユーザーに求めることができます。setMessageDelegateWindow.confirm

上に構築され、PlaceRequestChangeEventアクティビティPlaceChangeEventです。を複数持つことができActivityManager、それぞれにActivityMapper表示領域があり、同じ特定の/現在の場所に対してそれぞれ異なるアクティビティを表示します。

goToそしてその一方で、上記の出来事に基づいて、歴史があります。PlaceHistoryHandler両側のイベントをリッスンし、履歴を更新するか(を介して)Historian、場所を更新します(を介して)。両方の世界の間の地図。( )のデフォルトの実装では、とを使用します。たとえば、 HTML5などを使用する独自の実装を提供できます。PlaceControllergoToPlaceHistoryMapperHistorianDefaultHistoriancom.google.gwt.user.client.Historycom.google.gwt.user.client.Window#addWindowClosingHandlerpushStateonpopstate

見る:

于 2012-10-22T16:35:02.660 に答える