Namespace do visualizador do SDK

Última atualização em 2023-11-03
  • Tópicos
  • Dynamic Media Classic
    Exibir mais informações sobre este tópico
  • Viewers
    Exibir mais informações sobre este tópico
  • SDK/API
    Exibir mais informações sobre este tópico
  • Flyout
    Exibir mais informações sobre este tópico
  • Criado para:
  • Developer
    User

O visualizador é composto de muitos componentes do SDK do visualizador. Normalmente, a página da Web não precisa interagir diretamente com a API de componentes do SDK; todas as necessidades comuns são cobertas na própria API do visualizador.

No entanto, alguns casos de uso avançados exigem que a página da Web faça referência a um componente interno do SDK usando o getComponent() e, em seguida, usar toda a flexibilidade das APIs do próprio SDK.

O namespace usado para carregar e inicializar componentes do SDK pelo visualizador depende do ambiente em que o visualizador está operando. Se o visualizador estiver em execução no Adobe Experience Manager, ele carregará os componentes do SDK na s7viewers.s7sdk namespace. Da mesma forma, o visualizador veiculado no Dynamic Media Classic carrega o SDK em s7classic.s7sdk.

Em ambos os casos, o namespace usado pelo SDK dentro do visualizador tem s7viewers ou s7classic como o prefixo. E, é diferente do simples s7sdk Namespace usado no Guia do usuário do SDK ou na documentação da API do SDK. Por esse motivo, é importante usar um namespace de SDK totalmente qualificado ao gravar o código de aplicativo personalizado que se comunica com componentes internos do visualizador.

Por exemplo, se você planeja ouvir StatusEvent.NOTF_VIEW_READY e o visualizador for veiculado no Experience Manager, o tipo de evento totalmente qualificado será s7viewers.s7sdk.event.StatusEvent.NOTF_VIEW_READYe o código do ouvinte de eventos será semelhante ao seguinte:

<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);
}
});

Nesta página