代码之家  ›  专栏  ›  技术社区  ›  HeyHeyJC

Google实时API OBJECT_CHANGE事件是由(几乎)任何事情触发的?

  •  0
  • HeyHeyJC  · 技术社区  · 9 年前

    以自定义实时对象“MyObject”为例,该对象的一个属性是引用CollaborativeList“MyList”的IndexReference。“MyObject”还有一个协作字段属性“MyProps”,我在其中放入了一个json字符串。

    为了检测“MyProps”的更改,我尝试了以下操作:

    MyObject.addEventListener(gapi.drive.realtime.EventType.OBJECT_CHANGED, dealWithChanges);
    

    然而,当我对“MyList”中的对象进行任何更改时(这不会以任何方式影响IndexReference),object_CHANGED事件将在“MyObject”上触发

    这是故意的吗?它使OBJECT_CHANGED事件变得无用,实际上是一个“某处发生了变化”事件,但如果没有它,似乎无法检测到“MyProps”的变化。

    1 回复  |  直到 9 年前
        1
  •  1
  •   Cheryl Simon    9 年前

    对象更改事件会出现气泡,因此您可以在树的更高处侦听发生在树的更低位置的任何事件。

    要仅侦听特定自定义对象内协作字段的更改,您需要 ValueChangedEvent