簡體   English   中英

在演示者之間傳遞控件/值,GWT Model View Presenter?

[英]Passing controls / values between presenters , GWT Model View Presenter?

菜鳥在這里。 在我的一個用例中,在使用GWT實現Model View Presenter Pattern時遇到了這個特定問題。

我只是從Ray Ryan的Google IO演講開始,然后關注Google Developers網站上的一些文章。 我沒有使用過GWTP或MVP4G或GIN之類的GWT附加組件或任何其他東西。 只是跟隨GWT網站上的聯系人示例並嘗試對我的案例進行建模。

這是問題。

我有這樣的AppController onValueChage方法

   public void onValueChange(ValueChangeEvent<String> event) {
   if(token != null){
    presenter = null;

    if(token == "display")
    {

    presenter = new DefaultPresenter(rpcService, eventBus, new DefaultView());
    }
    else if(token == "popup")
    {
    presenter = new PopUpPresenter(rpcService, eventBus, new PopUpView());      
    }
    else if(token == "dialog")
    {
    presenter = new DialogPresenter(rpcService, eventBus, new DialogView());
    }

    if (presenter!= null) {
       presenter.go(container);
     }
    }
}

我的應用程序是這樣流動的,首先顯示,然后在其中進行選擇,將產生一個對話框 ,然后對話框設置一些變量。 然后,在對話框被隱藏之后,我需要返回到原始顯示並繼續。 但是問題是我無法以相同的視圖返回到原來的DisplayPresenter ,因為只要歷史記錄發生更改,我最終都會創建一個演示者的新實例。

粗體字的所有內容都是單獨的演示者,擴展了演示者,並且它們都有特定的視圖。

有問題嗎? 1.每次發生歷史更改時,請幫助我擺脫創建演示者新實例的困境。

  1. MVP模式中是否有辦法在值持續存在的演示者之間傳遞控件?

  2. 如何在事件觸發時在應用程序控制器中加載演示者的現有實例?

  3. 如何在事件觸發時在應用程序控制器中加載演示者的現有實例?

關於在演示者之間傳遞狀態信息(問題1),簽出Places可能會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM