2010-11-05 78 views
0

我與GWT MVP Development with Activities and Places的例子有些混淆。 這是我第一次接近這樣的設計模式。我設法在我的項目中實現它,並且讓我驚訝的是它確實有效。歷史作品,事件火好等。帶活動和場所的GWT MVP - 「全局」參考?

由於我完全按照示例,我的演示者是一次性活動,每次用戶導航時創建,並且視圖保留在ClientFactory中。一切都是分開的,乾淨的。

現在我無法圍繞以下內容了:在我的應用程序中,用戶可以隨時選擇一個全局選項:這會觸發一個事件,通知當前的活動(這是期望的)。現在我感覺有點傻,但是如何將全局選項對象傳遞給事件觸發後創建的活動?

在這個例子中,Activities的構造函數接收一個只能容納簡單字符串(全局選項對象不是stringyfiable)和clientFactory的Place參數。 現在我在ClientFactory中放置全局選項,但必須是(或感覺)錯誤。我應該把它放在創建Activity對象的AppActivityMapper中嗎?我在這裏錯過了一些大事嗎?

+0

只是爲了製作一些廣告:還有另一個很好的mvp實現,可能不那麼讓人困惑:http://code.google.com/p/mvp4g/ – 2010-11-12 21:06:33

回答

1

您遇到了堆棧溢出(GWT MVP with Places & Activities - Where's the Model?)中其他位置描述的問題 - 活動& Places演示不包含MVP的模型組件。

儘管感覺不對,我建議將此模型數據實例存儲在您的ClientFactory中,或讓您的ClientFactory提供getModel()方法。數據模型返回可能包含您的全局選項。

上述文章中介紹的替代策略是針對您的「一次性」活動實際從ClientFactory獲取持久Presenter,或者讓您的Activity在創建時檢索數據模型。