如何使视图保持“谦逊”-使用带有特殊Oracle和Recommendations的uggestBox
||
我学会了如何实现自己的RecommendationOracle(\“ AuSuggestOracle \”)并拥有
建议(\“ AuMultiWordSuggestion \”)。就我而言,建议对象
由DTO构建。在选择事件中,我需要此dto(或
它的某些字段)做出适当反应。
我实现了一个包含3个建议框的小部件
甲骨文和他们之间的一些逻辑。现在我想应用MVP模式-
在演示者和视图中拆分此小部件。
目前,演示者的显示界面如下所示:
public interface Display {
HasSelectionHandlers<Suggestion> getFedLand();
HasSelectionHandlers<Suggestion> getCounty();
HasSelectionHandlers<Suggestion> getCommunity();
AuSuggestOracle getFedLandOracle();
AuSuggestOracle getCountyOracle();
AuSuggestOracle getCommunityOracle();
void clearCounty();
void clearCommunity();
void activateForm();
Widget asWidget();
}
问题是方法中关于我的模型的隐性知识
返回\“ AuSuggestOracle \”。所以我的问题是如何获得视图/
界面“不起眼”。在我的情况下,显示的建议字符串是
模棱两可,我至少需要所选项目的\“ id \”才能知道
选择了DTObject。
没有找到相关结果
已邀请:
1 个回复
锯康
我遇到的问题是在实例化之后可以将建议添加到RecommendationBox。为了解决这个问题,我用一个空白的uggestBox进行了初始化,然后将其从视图中删除,进行了更新,然后将其重新插入到适当的位置。 之后,您可以编写您的处理程序(在演示者中)以检查建议是否是您的自定义建议的实例,演示者可以处理选择并将相关信息下推至视图。 这样一来,您的所有观点都知道它将针对某件事采用通用建议,并且稍后会使用信息进行更新(这将是该建议的结果,但观点是“谦虚”)。 \'知道)。