2013-07-07 28 views
1

我有一个协作地图,将协作地图作为值。当值图上发生事件时,我想知道事件属于哪个键(外部地图的)。任何人都可以建议一个干净的方式来实现这一目标(key,cmapb(k,string)),ChangeEvent发生在cmapb字符串上,我想知道CMap的关键字。 k是唯一唯一的个人密钥(所以跟踪k,然后找到包含k的密钥不是一个选项)。在协作地图中跟踪ChangeEvent源

ValueChangedEventCollaborativeMap

编辑:

我附上事件监听添加记录(cmapb)到CMAP之前是这样的:

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

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

回答

1

我不确定你究竟是在试图在这里建模。你是否真的为这些地图添加了任意元素?否则,您可能会考虑使用自定义对象,您可以在其中存储关键字段以及其他正在存储的其他对象的其他字段。 (请参阅https://developers.google.com/drive/realtime/build-model#lifecycle_of_a_custom_collaborative_data_object

如果您真的只想访问该函数中的该值,可以使用标准JavaScript(例如closure或bind函数)来实现该功能。

+0

刚才我想我可以在k上添加Key的名称,然后从event.property中提取它。我非常专注于获得不同的解决方案,无法看到这个简单的解决方案。无论我会看看你的建议。 – Giannis