Freigeben über


Upgrade auf die neueste Version des Microsoft Graph-Toolkits

Dieser Artikel enthält eine Zusammenfassung der breaking changes, die in Microsoft Graph Toolkit-Versionen eingeführt wurden, und wie sich diese Änderungen auf Ihre Lösung auswirken können.

Microsoft Graph Toolkit v4.0

Die Unterstützung für ES5 und wird nicht mehr unterstützt. mgt-loader

Microsoft Graph Toolkit v4.0 beendet die Unterstützung für ES5 und die Verwendung von mgt-loader als Möglichkeit zum Importieren des Toolkits in Ihre Anwendung über CDN. Wenn Sie verwenden mgt-loader, müssen Sie Ihren Code ändern, um die Module zu importieren.

Der folgende Code:

<script src="https://unpkg.com/@microsoft/mgt@3/dist/bundle/mgt-loader.js"></script>
<mgt-msal2-provider client-id="[CLIENT-ID]"></mgt-msal2-provider>
<mgt-login></mgt-login>

Wird wie folgt:

<script type="module">
  import { registerMgtComponents, Providers, Msal2Provider } from 'https://unpkg.com/@microsoft/mgt@4';
  Providers.globalProvider = new Msal2Provider({clientId: '[CLIENT-ID]'});
  registerMgtComponents();
</script>

<mgt-login></mgt-login>

Entfernen des mgt-spfx Pakets zum Erstellen SharePoint-Framework Webparts

Microsoft Graph Toolkit v4.0 entfernt das @microsoft/mgt-spfx Paket zum Erstellen SharePoint-Framework Webparts. Um eine großartige Erfahrung für unsere SharePoint-Entwickler zu gewährleisten, haben wir unser @microsoft/mgt-spfx-utils Paket und unsere Mehrdeutigkeitsfunktionen verbessert, um eine nahtlose Integration zwischen SPFx und dem Toolkit zu ermöglichen. Dieser Breaking Change ebnet den Weg für eine bessere Entwicklererfahrung und weitere Features in der Zukunft.

Enumerationen sind jetzt Zeichenfolgen-Unions.

Microsoft Graph Toolkit v4.0 ändert die Art und Weise, wie Enumerationen definiert werden. Anstatt zum Definieren der Werte zu verwenden enum , verwendet das Toolkit jetzt Zeichenfolgen-Unions. Diese Änderung bietet bessere Eingaben und eine bessere und einheitliche Entwicklererfahrung, insbesondere für React-Entwickler. Diese Änderung wirkt sich auf AvatarType, ViewType, UserType, PersonType, GroupType, ResponseTypeund aus PersonCardInteraction. Verwenden Sie ViewType beispielsweise anstelle von wie folgt:

<Person personQuery="me" view={ViewType.twolines}></Person>

Sie verwenden ViewType jetzt wie folgt:

<Person personQuery="me" view="twolines"></Person>

mgt-tasks ist jetzt mgt-planner

Um die Microsoft 365-Benennung besser zu verwenden, mgt-tasks wurde in mgt-plannerumbenannt. Dies bedeutet auch, dass die aktualisierte mgt-planner Komponente den Wechsel zu Outlook-Aufgaben nicht mehr unterstützt data-source .

Erforderliche Berechtigungen für mgt-person und mgt-planner

Wir haben die Gelegenheit ergriffen, einen Ansatz mit den geringsten Rechten für die von mgt-person und erforderlichen Berechtigungen zu vereinfachen und mgt-plannereinzuhalten.

  • In Anwendungen, die verwenden mgt-person, müssen Benutzer möglicherweise neuen Berechtigungsbereichen zustimmen. Ausführliche Informationen finden Sie in der Berechtigungstabelle für die Komponente.
  • Minimale Berechtigung für mgt-planner geändert von in Tasks.ReadWriteGroup.ReadWrite.All für Schreibvorgänge und von in Tasks.ReadGroup.Read.All für Lesevorgänge.

prepScopes() erkennt jetzt die Berechtigungsbereiche für die Zustimmung.

Die prepScopes() Funktion akzeptiert jetzt ein Array von Bereichen, das anhand des Satzes der derzeit zugestimmten Berechtigungsbereiche für den aktuellen Benutzer überprüft wird. Wenn einer der angegebenen Bereiche gefunden wird, werden keine zusätzlichen Bereiche angefordert. Wenn keine Übereinstimmung gefunden wird, wird der Benutzer aufgefordert, dem ersten Bereich im angegebenen Array von Bereichen zuzustimmen. Dies trägt zur Benutzererfahrung bei und ermöglicht Entwicklern die Verwendung eines Ansatzes mit den geringsten Rechten.

Die Registrierung von Komponenten ist jetzt erforderlich.

Entwickler müssen explizit die Registerfunktion für alle Webkomponenten aufrufen, die in ihrer Anwendung verwendet werden, wenn Komponenten von verwendet werden @microsoft/mgt-components. Das Importieren aus dem Stamm von @microsoft/mgt-components hat keinen automatischen Registrierungs-Nebeneffekt mehr. Anstatt beispielsweise zu verwenden import { Person } from '@microsoft/mgt-components'; , müssen Sie verwenden import { Person } from '@microsoft/mgt-components; und aufrufen registerMgtPersonComponent().

Hinweis

Komponenten aus @microsoft/mgt-react registrieren die zugrunde liegende Webkomponente automatisch, wenn sie zum ersten Mal verwendet werden. In Fällen, in denen die React Komponenten nicht verwendet werden, werden Komponenten nicht automatisch im Browser registriert. Dies führt zu einem Breaking Change, wenn diese Anwendungen unformatiertes Webkomponentenmarkup ausgeben, anstatt die Wrapperkomponenten zu verwenden. Stellen Sie sicher, dass Sie die registerMgt{Name}Component() Funktionen verwenden.

MgtPersonCard verfügt nicht mehr über eine statische Konfigurationseigenschaft

Diese Konfiguration wurde in die MgtPersonCardConfig -Klasse verschoben, damit Entwickler die Konfiguration und die zugehörige getMgtPersonCardScopes() Funktion auf der obersten Ebene ihrer Anwendung importieren können, ohne automatisch die Gewichtung der vollständigen mgt-person-card Komponente und der Abhängigkeiten zur Eingabedatei für ihre Anwendungen hinzuzufügen. Dies hilft bei kleineren Bündelgrößen und einer besseren Gesamterfahrung für Entwickler.

mgt-people-picker zeigt standardmäßig keine Anwesenheit an

Das Standardverhalten von mgt-people-picker Änderungen, sodass die Anwesenheit des Benutzers nur angezeigt wird, wenn das show-presence Attribut oder die showPresence Eigenschaft festgelegt ist. Diese Änderung trägt dazu bei, die Leistung für Anwendungen zu verbessern, die keine Präsenz zeigen müssen, und einen Ansatz mit den geringsten Berechtigungen zu übernehmen.

Microsoft Graph Toolkit v3.0

Das Designframework wurde in Fluent UI-Webkomponenten geändert.

Um konform zu bleiben und sich an das moderne Erscheinungsbild von Microsoft 365 anzupassen, verwendet das Microsoft Graph-Toolkit jetzt Fluent UI-Webkomponenten. Es wird empfohlen, einige Ihrer Stile mit dem Fluent 2-Designsystem zu aktualisieren.

Viele der Designtoken, die bereitgestellt werden, um das Aussehen und Verhalten unserer Komponenten anzupassen, haben sich geändert. Weitere Informationen finden Sie im Abschnitt benutzerdefinierte CSS-Eigenschaften der Artikel für jede Komponente.

Microsoft Graph JS SDK von 2.x auf 3.x aktualisiert

Wenn Sie den Microsoft Graph-Client über globalProviderverwendet haben, wurde er auf 3.x aktualisiert. Ausführliche Informationen dazu, wie sich diese Änderung auf Sie auswirken kann, finden Sie im Upgradehandbuch für das Microsoft Graph JS SDK.

Upgrade von Lit 1.x auf Lit 2.x

Wenn Sie benutzerdefinierte Komponenten auf grundlage des Toolkits erstellt haben, lesen Sie den Lit-Upgradeleitfaden , um zu erfahren, wie sich diese Änderung auf Sie auswirken könnte.

Geänderte Objektstrukturen und Typisierungen sind für Ereignisse verfügbar, die von unseren Komponenten ausgegeben werden.

In dieser Version wurden die Objektstrukturen einiger Ereignisse geändert, um eine bessere Entwicklererfahrung zu bieten. Alle Ereignisse werden mithilfe des CustomEvent<T> generischen Typs genau typisiert, damit Sie qualitativ hochwertigen Code bereitstellen können. Ausführliche Informationen finden Sie im Abschnitt Ereignisse der Artikel zu den einzelnen Komponenten.

Geänderte Berechtigungen in der Teams-Kanalauswahl

Die MgtTeamsChannelPickerConfig wurde entfernt, und die Teams-Kanalauswahlkomponente verwendet Team.ReadBasic.All jetzt nur noch Bereiche und Channel.ReadBasic.All anstelle der Legacy User.Read.All - und Group.Read.All -Bereiche. Diese Änderung ermöglicht Es Ihrer Anwendung, einen Ansatz mit den geringsten Rechten zu verwenden.

Mehrere Anbieter entfernt

In dieser Version wurden mehrere Anbieter entfernt, um sicherzustellen, dass Ihre Apps sicher bleiben und ihren Benutzern die bestmögliche Erfahrung bieten (Unterstützung für bedingten Zugriff, kontinuierliche Zugriffsauswertung usw.). Die folgenden Anbieter wurden entfernt:

  • Teams-Anbieter
  • Teams MSAL2-Anbieter
  • MSAL-Anbieter

Nächste Schritte

  • Aktualisieren Sie Ihre Lösungen auf die Toolkit-Version 3.
  • Melden Sie Bugs oder hinterlassen Sie eine Feature-Anforderung auf GitHub.