De RemotePage-component remote-page-component

Wanneer u besluit welk integratieniveau tussen uw externe SPA en AEM wilt, is het vaak duidelijk dat u de SPA binnen AEM moet kunnen bekijken en bewerken. De component RemotePage is alleen voor dit doel een aangepaste pagina-component.

Overzicht overview

De component RemotePage haalt alle noodzakelijke activa van de geproduceerde toepassing asset-manifest.json en gebruikt dit voor het renderen van de SPA binnen AEM.

  • Met de RemotePage kunt u de scripts en stijlpagina's van een SPA in de hoofdtekst van een AEM Page-component injecteren.
  • Met de Virtual Front Components kunt u secties markeren als bewerkbaar in AEM SPA Editor.
  • Een SPA die op een ander domein wordt gehost, kan samen in AEM bewerkbaar worden gemaakt.

Zie het artikel Een externe SPA bewerken in AEM voor meer informatie over bewerkbare, externe SPA in AEM.

Vereisten requirements

  • CORS in ontwikkeling inschakelen

  • Externe URL configureren in Pagina-eigenschappen

  • De SPA renderen in AEM

  • De webtoepassing moet een bundler-element gebruiken als een van de volgende elementen en een asset-manifest.json bestand in de hoofdmap van het domein dat in een entrypoints property alle CSS- en JS-bestanden die moeten worden geladen:

    • https://github.com/shellscape/webpack-manifest-plugin

    • https://github.com/webdeveric/webpack-assets-manifest

    • https://github.com/mugi-uno/parcel-plugin-bundle-manifest

      entrypoints, voorbeeld van eigenschap

  • De toepassing moet in een <div id="root"></div> onder de body element. Als er een andere opmaak wordt verwacht voor de app om te instantiĆ«ren, moet deze dienovereenkomstig worden aangepast in de HTML-scripts van de proxycomponent die een sling:resourceSuperType="spa-project-core/components/remotepage.

Beperkingen limitations

  • De component RemotePage verwacht dat de implementatie activa-manifest zoals levert hier gevonden. De component RemotePage, echter, is slechts getest om met het React kader (en Next.js als ver-pagina-volgende component) te werken, en steunt daarom ver het laden van toepassingen van andere kaders, zoals Angular niet.
  • Interne CSS die is gedefinieerd in het hoofdbestand van de HTML van de toepassing en inline CSS op het basisknooppunt DOM zijn niet beschikbaar bij externe rendering in AEM.

Technische details technical-details

Net als de rest van het AEM SPA-project is de RemotePage-component een open bron. Voor de volledige technische details van de RemotePage-component, zie de bewaarplaats GitHub.

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