1

我有一个协作地图,以协作地图为值。当值映射上发生事件时,我想知道该事件属于哪个键(外部映射)。任何人都可以提出一种干净的方法来实现这一目标?

CMap(key, cmapb(k,string)) , ChangeEvent 发生在 cmapb 字符串上,我想知道 CMap 的键。k 仅对单个密钥是唯一的(因此跟踪 k 然后查找包含 k 的密钥不是一种选择)。

ValueChangedEvent 协作映射

编辑:

在将记录(cmapb)添加到 CMAP 之前,我以这种方式附加 EventListener:

records.addEventListener(gapi.drive.realtime.EventType.VALUE_CHANGED, updateJSON); 

如果我可以在 updateJSON 上传递记录的 id,那么我可以遍历 CMAP 以查找具有该 id 的值。虽然我不知道如何传递 id 以及 ChangeEvent。

4

1 回答 1

1

我不确定你到底想在这里建模什么。您实际上是在向这些地图添加任意元素吗?否则,您可能会考虑使用自定义对象,其中您可以有一个字段用于键,而其他字段用于您正在存储的其他对象。(见https://developers.google.com/drive/realtime/build-model#lifecycle_of_a_custom_collaborative_data_object

如果您真的只想访问函数中的那个值,您可以使用标准的 javascript 来实现,例如闭包或绑定函数。

于 2013-07-07T18:27:23.420 回答