Modelo dinâmico para mapeamento de componentes para SPAs dynamic-model-to-component-mapping-for-spas

Este documento descreve como o modelo dinâmico para mapeamento de componentes ocorre no JavaScript SPA SDK for AEM.

IMPORTANT
O editor de SPA foi descontinuado para novos projetos. Ele continuará funcionando com projetos existentes da Adobe, mas não deve ser usado para novos projetos. Os editores preferidos para gerenciar conteúdo headless no AEM agora são:

Módulo ComponentMapping componentmapping-module

O módulo ComponentMapping é fornecido como um pacote NPM para o projeto front-end. Ele armazena componentes de front-end e fornece uma maneira para o Aplicativo de página única mapear componentes de front-end para tipos de recursos do AEM. O módulo permite uma resolução dinâmica de componentes ao analisar o modelo JSON do aplicativo.

Cada item presente no modelo contém um campo :type que expõe um tipo de recurso AEM. Quando montado, o componente de front-end pode ser renderizado usando o fragmento de modelo que recebeu das bibliotecas subjacentes.

Consulte o documento Blueprint do SPA para obter mais informações sobre análise de modelo e acesso do componente front-end ao modelo.

Consulte também o pacote npm: @adobe/aem-spa-component-mapping

Aplicativo de página única orientado por modelo model-driven-single-page-application

Os aplicativos de página única que usam o JavaScript SPA SDK para AEM são orientados por modelo:

  1. Os componentes front-end se registram no Repositório de Mapeamentos de Componentes.

  2. Em seguida, o Contêiner, uma vez fornecido com um modelo pelo Provedor de Modelos, repete o conteúdo do modelo (:items).

  3. Se houver uma página, seus filhos (:children) obterão primeiro uma classe de componente do Mapeamento de Componentes e a instanciarão.

Inicialização do aplicativo app-initialization

Cada componente é estendido com os recursos do ModelProvider. A inicialização assume a seguinte forma geral:

  1. Cada provedor de modelo se inicializa e escuta as alterações feitas na parte do modelo que corresponde ao componente interno.

  2. O PageModelManager deve ser inicializado como representado pelo fluxo de inicialização.

  3. Depois de armazenado, o gerenciador de modelo de página retorna o modelo completo do aplicativo.

  4. Este modelo é então passado para o componente raiz de front-end Container do aplicativo.

  5. Partes do modelo são finalmente propagadas para cada componente filho individual.

Inicialização do modelo de aplicativo

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab