Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie React- und Plattformbibliotheken verwenden, verwenden Sie dieselbe Infrastruktur wie die Power Apps-Plattform. Diese Infrastruktur bedeutet, dass Sie React- und Fluent-Bibliotheken nicht mehr einzeln für jedes Steuerelement verpacken müssen. Alle Steuerelemente verwenden eine gemeinsame Bibliotheksinstanz und -version, die eine nahtlose und konsistente Benutzeroberfläche bietet.
Durch die Wiederverwendung der bestehenden React‑ und Fluent-Bibliotheken der Plattform können Sie die folgenden Vorteile erwarten:
- Reduzierte Kontrollbündelgröße
- Optimierte Lösungsverpackung
- Schnellere Laufzeitübertragung, Skripterstellung und Steuerungs-Rendering
- Design- und Themenausrichtung mit dem Power Apps Fluent-Designsystem
Mit diesen Vorteilen wird erwartet, dass dieser Ansatz die bevorzugte Methode wird, um alle Power Apps Codekomponenten zu erstellen, nachdem dieses Feature die allgemeine Verfügbarkeit erreicht hat.
Voraussetzungen
Wie bei jeder Komponente installieren Sie Visual Studio Code und die Microsoft Power Platform CLI, wie in den Voraussetzungen beschrieben.
Anmerkung
Wenn Sie Power Platform CLI bereits für Windows installiert haben, stellen Sie sicher, dass Sie die neueste Version verwenden, indem Sie den Befehl pac install latest verwenden.
Die Power Platform Tools für Visual Studio Code sollten automatisch aktualisiert werden.
Erstellen einer React-Komponente
Anmerkung
Diese Anweisungen setzen voraus, dass Sie zuvor Codekomponenten erstellt haben. Wenn dies nicht der Fall ist, lesen Sie dieses Lernprogramm: Erstellen Sie Ihre erste Komponente.
Es gibt einen neuen Parameter --framework (-fw) für den Befehl pac pcf init. Setzen Sie den Wert dieses Parameters auf react.
Die folgende Tabelle zeigt die Langform der Befehle:
| Parameter | Wert |
|---|---|
--name |
ReactSample |
--namespace |
SampleNamespace |
--template |
field |
--framework |
react |
--run-npm-install |
true (Standard) |
Der folgende PowerShell-Befehl verwendet die Parameterverknüpfungen, erstellt ein React-Komponentenprojekt und führt npm-install in dem Ordner aus, in dem Sie den Befehl ausführen:
pac pcf init -n ReactSample -ns SampleNamespace -t field -fw react -npm
Sie können das Steuerelement jetzt wie gewohnt in der Testumgebung durch Verwendung von npm start erstellen und anzeigen.
Nachdem Sie das Steuerelement erstellt haben, können Sie es in Lösungen verpacken und für modellgesteuerte Apps (einschließlich benutzerdefinierter Seiten) und Canvas-Apps wie Standardcodekomponenten verwenden.
Unterschiede zu Standardkomponenten
Dieser Abschnitt beschreibt die Unterschiede zwischen einer React-Komponente und einer Standardkomponente.
ControlManifest.Input.xml
Setzen Sie das Steuerelementelement-Attributcontrol-type auf virtual anstelle von standard.
Anmerkung
Das Ändern dieses Werts konvertiert eine Komponente nicht von einem Typ in einen anderen.
Innerhalb des Ressourcenelements finden Sie zwei neue untergeordnete Plattform-Bibliothekselement-Elemente wie im folgenden Beispiel:
<resources>
<code path="index.ts" order="1" />
<platform-library name="React" version="16.14.0" />
<platform-library name="Fluent" version="9.46.2" />
</resources>
Anmerkung
Weitere Informationen zu gültigen Plattformbibliotheksversionen finden Sie unter Liste der unterstützten Plattformbibliotheken.
Verwenden Sie Plattformbibliotheken für Fluent 8 und 9. Wenn Sie Fluent nicht verwenden, entfernen Sie das platform-library-Element, bei dem der Wert des Attributs nameFluent ist.
Index.ts
Die Methode ReactControl.init zur Steuerungsinitialisierung hat keine div-Parameter, da die React-Steuerelemente das DOM nicht direkt rendern. Stattdessen gibt ReactControl.updateView ein ReactElement zurück, das die Details des tatsächlichen Steuerelements im React-Format enthält.
bundle.js
Das Paket enthält keine React- und Fluent-Bibliotheken, da sie gemeinsam genutzt werden. Durch dieses Teilen wird die Größe von bundle.js verkleinert.
Beispielkontrollen
Die folgenden Steuerelemente sind in den Beispielen enthalten. Sie funktionieren genauso wie ihre Standardversionen, bieten aber eine bessere Leistung, da es sich um virtuelle Steuerungen handelt.
| Sample | Beschreibung | Verknüpfung |
|---|---|---|
| ChoicesPickerReact | Der Standard ChoicesPickerControl ist in eine React-Steuerung umgewandelt. | ChoicesPickerReact-Beispiel |
| FacepileReact | Das ReactStandardControl, umgewandelt in ein React-Steuerelement. | FacepileReact |
Liste der unterstützten Plattformbibliotheken
Plattformbibliotheken stehen sowohl beim Build als auch zur Laufzeit den Controls zur Verfügung, die die Funktion für Plattformbibliotheken unterstützen. Derzeit stellt die Plattform die folgenden Versionen bereit, die die höchsten unterstützten Versionen sind.
| Name | npm-Paketname | Erlaubter Versionsbereich | Version geladen |
|---|---|---|---|
| React | react | 16.14.0 | 17.0.2 (Modell), 16.14.0 (Canvas) |
| Fluent | @fluentui/react | 8.29.0 | 8.29.0 |
| Fluent | @fluentui/react | 8.121.1 | 8.121.1 |
| Fluent | @fluentui/react-components | >=9,4,0 <=9,46,2 | 9.68.0 |
Anmerkung
Die Anwendung lädt zur Laufzeit möglicherweise eine höher kompatible Version einer Plattformbibliothek, aber dabei handelt es sich möglicherweise nicht um die neueste verfügbare Version. Sie können im Manifest entweder Fluent 8 oder Fluent 9 angeben, aber nicht beides.
Häufig gestellte Fragen
F: Kann ich ein vorhandenes Standardsteuerelement mithilfe von Plattformbibliotheken in ein React-Steuerelement konvertieren?
A: Nein. Sie müssen ein neues Steuerelement mithilfe der neuen Vorlage erstellen und dann das Manifest und die index.ts-Methoden aktualisieren. Vergleichen Sie die im vorherigen Abschnitt beschriebenen Standard- und React-Beispiele.
F: Kann ich React-Steuerelemente und Plattformbibliotheken mit Power Pages verwenden?
A: Nein. React-Steuerelemente und Plattformbibliotheken funktionieren derzeit nur mit Canvas- und modellgesteuerten Apps. In Power Pages werden React-Steuerelemente nicht basierend auf Änderungen in anderen Feldern aktualisiert.
Ähnliche Artikel
Was sind Codekomponenten?
Codekomponenten für Canvas-Apps
Erstellen und Entwickeln einer Codekomponente
Weitere Informationen zum Power Apps component framework
Codekomponenten in Power Pages verwenden