java - Flex datagrid 可能存在数据缓存问题

标签 java apache-flex caching actionscript blazeds

我有一个应用程序,其中有 5 个选项卡。每个选项卡都有一个数据网格。第一个选项卡中数据网格的数据提供程序是其他选项卡中数据网格的公共(public)数据提供程序。每个选项卡中的数据根据​​状态而变化,除了我显示所有数据的第一个选项卡。现在,主选项卡的数据每分钟刷新一次,使用计时器从后端获取新数据[使用 Blazeds 与服务器端代码(即 Java)交互]。

在我对除第一个选项卡之外的任何选项卡中的任何行执行任何操作后,我需要从该数据网格中删除该行。我可以通过从数据提供程序中删除条目来做到这一点,但是一旦我返回主选项卡并返回到我完成操作的选项卡,我就会找到已删除的条目。这里要注意的一点是,该条目不在主选项卡中,也不在我执行操作的选项卡中,但一旦我在选项卡之间导航,它就会显示在 UI 中。但如果我使用 F5 进行刷新,它会表现正常。

我只是想知道这个问题是否是由于客户端的数据缓存造成的,如果是的话,有什么办法可以解决这个问题?

最佳答案

从 arrayCollection/data 中删除对象后 - 在其上运行 collectionName.refresh()

也就是说,我最好的猜测是,我认为您遇到了这样一种情况:您正在更新指针或复制引用而不是实际数据,并且它正在通过绑定(bind)或类似的方式重置为该指针。

如果您在绑定(bind)到数据网格的对象上添加绑定(bind)监听器/更改观察器,该数据网格在获取 CHANGE 事件时跟踪到控制台,我打赌您会感到惊讶!

(顺便说一句,这是快速调试此类问题的方法)。

关于java - Flex datagrid 可能存在数据缓存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4177821/

相关文章:

java - 体验 Vaadin touchkit

java - Jackcess ExportFilter 的问题

Java - 检查字符串是否包含 double 值的最快方法

actionscript-3 - Actionscript 3 和 Flex 4 通过触摸滚动 TileList

java : Use Server-Side Encryption in Amazon S3 using vfs s3 plugin

java - 用于桌面应用程序的 html5 vs adobe air vs java?

apache-flex - 如何在正在运行的 flex 应用程序中获取服务器端点?

php - MySQL "like"类似 Memcache 中的功能

caching - 为什么Netflix在memcached上写了Evcache而不是在Redis上

php - Zend Framework 缓存存放位置