我希望使用Request Factory代理實現UI和數據的雙向綁定,對於該部分,我需要一種方法來偵聽EntityProxy或ValueProxy中的更改。如果它們是普通模型,我可以將我的視圖附加到模型的更改監聽器,但在請求工廠中,模型或「代理」是接口,我無法弄清楚,如何讓視圖知道何時「設置器」方法被調用。GWT請求工廠中的實體代理更改監聽器
有沒有一種方法可以做到這一點,沒有包裝代理並委託代理,而同時提出事件?我希望功能可以直接「插入」到代理中。
我希望使用Request Factory代理實現UI和數據的雙向綁定,對於該部分,我需要一種方法來偵聽EntityProxy或ValueProxy中的更改。如果它們是普通模型,我可以將我的視圖附加到模型的更改監聽器,但在請求工廠中,模型或「代理」是接口,我無法弄清楚,如何讓視圖知道何時「設置器」方法被調用。GWT請求工廠中的實體代理更改監聽器
有沒有一種方法可以做到這一點,沒有包裝代理並委託代理,而同時提出事件?我希望功能可以直接「插入」到代理中。
我們已經想出了一個解決方法。我們使用GWT生成器代碼並在autobean代理中添加了一個Listener
字段。之後,我們在每個生成的setter
方法中附加listener.execute()
。所以現在我們可以將change listeners
附加到代理上並聽取他們的意見。
唯一讓我擔心的是調用一個JSNI
調用一個受保護的方法,並且還會使用GWT生成器代碼。這有多好?
我也想過和研究過這個問題,但還沒有到它呢。
我想你需要看看gwt MobileWebApp的例子。 他們有一個任務域對象,它有一個代理接口,但它們使用接口的實現在客戶端代替(見TaskProxy & TaskProxyImpl)
我很想聽聽你是否會做一些與此進展。 希望這會有所幫助
非常感謝您的回答,您能否看看我在下面發佈的方法。它似乎工作,但它很好嗎? – 2012-02-17 08:48:34