Viewer SDK命名空间 viewer-sdk-namespace

查看器由许多Viewer SDK组件构建。 通常,网页不需要直接与SDK组件API交互;查看器API本身涵盖了所有常见需求。

但是,一些高级用例要求网页使用getComponent()查看器API引用内部SDK组件,然后使用SDK本身API的所有灵活性。

查看器用于加载和初始化SDK组件的命名空间取决于查看器运行的环境。 如果查看器在Adobe Experience Manager中运行,查看器会将SDK组件加载到s7viewers.s7sdk命名空间中。 同样,Dynamic Media Classic提供的查看器将SDK加载到s7classic.s7sdk中。

在任一情况下,查看器中的SDK使用的命名空间都将s7viewerss7classic作为前缀。 此外,它与SDK用户指南或SDK API文档中使用的纯s7sdk命名空间不同。

因此,在编写与内部查看器组件通信的自定义应用程序代码时,必须使用完全限定的SDK命名空间。

例如,如果您计划侦听StatusEvent.NOTF_VIEW_READY事件并且从Experience Manager提供查看器,则完全限定的事件类型为s7viewers.s7sdk.event.StatusEvent.NOTF_VIEW_READY,事件侦听器代码将类似于以下内容:

<instance>.setHandlers({
 "initComplete":function() {
  var flyout = <instance>.getComponent("flyout");
   flyout.addEventListener(s7viewers.s7sdk.event.StatusEvent.NOTF_VIEW_READY, function(e) {
   console.log("view ready");
  }, false);
}
});
The same code for viewer served from Dynamic Media Classic looks like this:
<instance>.setHandlers({
 "initComplete":function() {
  var flyout = <instance>.getComponent("flyout");
   flyout.addEventListener(s7classic.s7sdk.event.StatusEvent.NOTF_VIEW_READY, function(e) {
   console.log("view ready");
  }, false);
}
});
recommendation-more-help
b7426f53-aad9-4c00-83fc-664f30f681e8