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

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

ValueChangedEvent CollaborativeMap

编辑:

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

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



  如果我可以在updateJSON上传递记录的ID,则可以进行迭代
  通过CMAP查找哪个值具有该ID。虽然我不知道
  如何传递ID以及ChangeEvent。

最佳答案

我不确定您要在此建模的确切范围。您实际上是在向这些地图添加任意元素吗?否则,您可能会考虑使用自定义对象,其中可能有一个用于键的字段和一个用于存储其他对象的其他字段。 (请参见https://developers.google.com/drive/realtime/build-model#lifecycle_of_a_custom_collaborative_data_object

如果您确实只想访问该函数中的该值,则可以使用标准javascript(例如闭包或bind函数)来实现。

关于javascript - 在协作 map 中跟踪ChangeEvent源,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17512364/

10-09 22:30