· Architektur · 4 minuten Lesezeit
React in Power Pages: Frontend-Architektur für Enterprise-Portale
Warum sich zwischen Low-Code und Custom-Code entscheiden? Erfahren Sie, wie Sie React-Komponenten nahtlos in Power Pages einbinden und moderne User-Experience realisieren.

Grenzen der Standard-Komponenten in Power Pages
In komplexen Enterprise-Umgebungen stoßen Standard-Formulare und Out-of-the-Box-Komponenten von Power Pages oft an technische Grenzen. Sei es eine interaktive Konfigurations-Tabelle für Lease-Verträge oder ein dynamisches Dashboard für Versicherungsabläufe. Die Anforderungen an eine moderne Bedienung lassen sich mit reinem Low-Code kaum abbilden.
Wer versucht, komplexe Logik ausschließlich über Liquid-Templates oder jQuery zu lösen, stößt schnell auf Probleme bei der Wartung und Stabilität. Stattdessen setzen wir auf eine hybride Architektur, die die Zuverlässigkeit von Power Pages mit der Flexibilität von React kombiniert. Wie wir diesen modernen Frontend-Ansatz in einem aktuellen Enterprise-Kundenprojekt erfolgreich umgesetzt haben, verdeutlicht den praktischen Nutzen dieser Strategie.
Strategische Wege zur React-Integration
Wir unterscheiden zwei praxiserprobte Ansätze, um React produktiv in Power Pages zu nutzen. Die Wahl der Methode hängt von der Komplexität sowie den Anforderungen an die Wiederverwendbarkeit ab.
1. Web Templates für React-Widgets
Datenfluss: React-Komponenten kommunizieren über die Dataverse Web API mit dem Backend, während Liquid die initiale HTML-Struktur bereitstellt.
Für gezielte Anpassungen der Benutzeroberfläche oder einzelne Widgets ist die Einbindung via Web Templates oft der schnellste Weg. Hierbei wird das React-Bundle als statische Web-Datei im Dataverse hinterlegt. Dabei bildet das korrekte Management lokaler Ressourcen und Webdateien die technische Grundlage, um CSP-Blockaden im Browser sicher zu umgehen. Zudem minimieren wir durch die Inhouse-Speicherung der Assets das Risiko für Supply Chain Attacks durch externe CDNs deutlich. Eine detaillierte Anleitung zur Anlage von Webdateien im Portal Management hilft dabei, diese Basis im System sauber aufzusetzen.
Die Umsetzung erfolgt in drei Schritten:
- Build-Prozess: Das React-Projekt wird lokal gebaut (z. B. via Vite). Die resultierenden Assets (.js/.css) werden über das Portal Management hochgeladen.
- Containerisierung: Ein Web-Template stellt den Root-Container bereit, in dem React später gerendert wird.
- Injektion: Das Skript wird entweder statisch oder (für moderne Vite-Builds empfohlen) dynamisch geladen. Um diesen Prozess für die tägliche Entwicklung effizient zu gestalten, empfiehlt sich ein automatisierter ALM Deployment-Workflow via PAC CLI, der den manuellen Upload-Overhead für lokale Entwickler eliminiert.
<!-- Root container for the React app -->
<div id="root"></div>
<script src="/my-react-app.js"></script>
<!-- Variant: Dynamic loading (async & module-based) -->
<script>
$(document).ready(function () {
console.info('Loading React app...');
var reactScript = document.createElement('script');
reactScript.src = '/my-react-app.js';
reactScript.type = 'module';
reactScript.async = true;
document.body.appendChild(reactScript);
});
</script>2. External Hosting für komplexe React-Apps
Wenn die Anwendung ein eigenes CI/CD-Deployment benötigt oder extrem umfangreich ist, empfiehlt sich das Hosting via Azure Static Web Apps. Die Einbindung erfolgt gesichert via IFrame oder JavaScript-Injektion, wobei die Kommunikation über postMessage gesteuert wird. Die CORS-Einstellungen im Azure Portal bilden hierbei die Sicherheits-Basis für eine stabile Vernetzung.
SSR im Vergleich zu Client-Side Hydration
Ein wichtiger Aspekt für die Architektur ist die Reihenfolge der Ausführung. Power Pages bereitet alle Inhalte inklusive der Liquid-Logik auf dem Server vor. Da Power Pages kein natives Server-Side Rendering für React unterstützt, werden die Komponenten erst im Browser des Nutzers geladen.
Wir setzen auf ein kontrolliertes Nachladen. Liquid liefert auf dem Server das HTML-Gerüst und den Root-Container. Sobald der Browser das Signal von jQuery erhält, dass die Seite bereit ist, startet die React-Anwendung. Diese Verzögerung sorgt dafür, dass das Basis-Layout des Portals stabil steht und keine Konflikte mit anderen Portal-Skripten entstehen.
Vergleich der Lösungen
| Kriterium | Web Template (JS) | External Hosting |
|---|---|---|
| Komplexität | Niedrig | Mittel |
| Dataverse-Zugriff | Über Web API | Web API / API Management |
| Performance | Gut | Abhängig von Latenz |
React als strategische Erweiterung von Power Pages
Der Einsatz von React in Power Pages ist kein Widerspruch zu Low-Code, sondern dessen konsequente Erweiterung für anspruchsvolle User-Journeys. Durch die saubere Trennung von Backend-Prozessen im Dataverse und hochperformanten Frontends schaffen wir Lösungen, die sowohl sicher als auch stabil sind.
Wie eine solche Enterprise-Architektur inklusive modernem Styling in der Praxis aussieht, zeigen unsere aktuellen Projektreferenzen.
(Planen Sie ein komplexes Portal-Projekt und benötigen eine belastbare Frontend-Architektur? Lassen Sie uns gemeinsam klären, welcher Ansatz für Ihre Anforderungen der richtige ist.)



