Dynamisk mappning av modell till komponent för SPA dynamic-model-to-component-mapping-for-spas

I det här dokumentet beskrivs hur den dynamiska mappningen av modell till komponent sker i JavaScript SPA SDK för AEM.

ComponentMapping-modul componentmapping-module

The ComponentMapping -modulen tillhandahålls som ett NPM-paket till frontendprojektet. Det lagrar komponenter för användargränssnitt och tillhandahåller ett sätt för Single Page Application att mappa komponenter för användargränssnitt till AEM resurstyper. Modulen aktiverar en dynamisk upplösning för komponenter när JSON-modellen för programmet analyseras.

Varje objekt i modellen innehåller en :type fält som visar en AEM. När den är monterad kan den främre komponenten återge sig själv med det fragment av modellen som den har fått från de underliggande biblioteken.

Se SPA -dokument om du vill ha mer information om modellparsning och frontdelens åtkomst till modellen.

Se även npm-paketet: @adobe/aem-spa-component-mapping

Modellstyrt Single Page-program model-driven-single-page-application

Single Page-program som använder JavaScript SPA SDK för AEM är modelldrivna:

  1. Front-end-komponenter registrerar sig för Komponentmappningsarkiv.

  2. Sedan Behållare, efter att ha fått en modell av Modellprovider, itererar över sitt modellinnehåll (:items).

  3. Om det finns en sida, dess underordnade sidor (:children) hämta först en komponentklass från Komponentmappning och sedan instansiera den.

Programinitiering app-initialization

Varje komponent utökas med funktionerna i ModelProvider. Initieringen har därför följande allmänna form:

  1. Varje modellprovider initierar sig själv och lyssnar efter ändringar som gjorts i den del av modellen som motsvarar dess inre komponent.

  2. The PageModelManager måste initieras så som representeras av initieringsflöde.

  3. När sidmodellhanteraren har lagrats returnerar den hela appmodellen.

  4. Den här modellen skickas sedan till frontendroten Behållare -komponenten i programmet.

  5. Delar av modellen sprids slutligen till varje enskild underordnad komponent.

Initiering av appmodell

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