这是 GWT 中经典的“等待 rpc 调用问题”的变体。
我在 GWT 中完成了一个完整的 CRUD 屏幕,调用 RPC 来攻击 Oracle 数据库。它有一个用于搜索条件和结果表的面板,另一个用于详细信息字段。我根据需要交换两者的可见性。
结果表是一个 CellTable,我调用“setVisibleRangeAndClearData”方法来填充表,该表负责分页、列排序等(例如,当我从更新 RPC 调用返回时,我保持我来的范围从)。
我曾经通过将“后代码”放在 RPC 调用的“onSuccess”块中(即交换面板)来进行“同步”,但是当调用“setVisibleRangeAndClearData”时,cellTable 本身会启动另一个 RPC 调用以获取新的我无法控制的数据。所以,发生的事情是我交换了面板(这是立即的),然后用户看到表数据更新,这很难看。
所以问题是:我该如何控制它?当“setVisibleRangeAndClearData”完成时,我如何等待或被调用?
提前致谢,
大卫