notes de publication SharePoint Framework v1.16
Cette version introduit des mises à jour des fonctionnalités relatives à Microsoft Viva, Microsoft Teams, Outlook, Office et SharePoint.
Libéré: 15 novembre 2022
Importante
Cette page traite des détails liés à une version SPFx spécifique. Cette page n’inclut pas la configuration SPFx requise supplémentaire qui doit être installée pour développer des solutions SPFx, notamment Node.js, Yeoman et d’autres outils.
Pour en savoir plus sur ces conditions préalables, voir Configuration de votre environnement de développement SharePoint Framework.
Installer la dernière version
Installez la dernière version préliminaire du SharePoint Framework (SPFx) en incluant la balise @latest :
npm install @microsoft/generator-sharepoint@latest --global
Mise à niveau de projets de la version 1.15.2 vers la version 1.16
- Dans le fichier package.json du projet, identifiez tous les packages SPFx v1.15.2. Pour chaque package SPFx :
Désinstallez le package v1.15.2 existant :
npm uninstall @microsoft/{spfx-package-name}@1.15.2
Installez le nouveau package v1.16 :
npm install @microsoft/{spfx-package-name}@latest --save --save-exact
Conseil
La CLI pour Microsoft 365 fournit une procédure détaillée simple pour la mise à niveau de vos solutions vers la dernière version de SharePoint Framework.
Nouvelles fonctionnalités et fonctionnalités
Publier des solutions Teams avec SPFx sur Outlook et Office
Étant donné que cette version de SPFx prend en charge le SDK JavaScript Teams v2, vous pouvez maintenant commencer à créer des expériences également pour Outlook et pour Office.com (application Microsoft 365) avec SharePoint Framework (SPFx). Cela permet d’exposer la même solution dans Microsoft, Outlook, Office.com et sharePoint sans modifications de code spécifiques.
Vous pouvez utiliser le Kit de développement logiciel (SDK) JavaScript Teams v2 pour détecter l’hôte de la solution, comme indiqué dans le code suivant. Si est this.context.sdks.microsoftTeams
vide, le code est exécuté dans SharePoint.
// if running in Microsoft Teams, Outlook, or Office...
if (!!this.context.sdks.microsoftTeams) {
const teamsContext = await this.context.sdks.microsoftTeams.teamsJs.app.getContext();
switch (teamsContext.app.host.name.toLowerCase()) {
case 'teams':
// RUNNING IN MICROSOFT TEAMS
case 'office':
// RUNNING IN OFFICE / OFFICE.COM
case 'outlook':
// RUNNING IN OUTLOOK
default:
throw new Error('Unknown host');
}
} else {
// RUNNING IN SHAREPOINT
}
Pour plus d’informations sur ces options, consultez l’article suivant.
Importante
L’utilisation du Kit de développement logiciel (SDK) Teams v2 dans les solutions SharePoint Framework est généralement disponible à partir de la version 1.16, ce qui permet d’utiliser immédiatement le Kit de développement logiciel (SDK) Teams v2. La prise en charge de la publication d’applications Teams (y compris les solutions SPFx) dans Outlook et dans Office.com (application Microsoft 365) est toutefois toujours en préversion et devrait être généralement disponible pour les expériences mobiles et de bureau au cours du premier semestre de l’année civile 2023.
Prise en charge du Kit de développement logiciel (SDK) JavaScript Teams v2
Cette version prend en charge teams-js v2. this.context.sdks.microsoftTeams.teamsJs
retourne la version 2 du Kit de développement logiciel (SDK). this.context.sdks.microsoftTeams.context
retourne toujours le contexte v1 pour la compatibilité descendante.
Remarque
teams-js v2 est à compatibilité descendante avec teams-js v1. Nous continuerons à prendre en charge v1 pour les solutions existantes.
Conseil
Le Kit de développement logiciel (SDK) JavaScript Teams v2 permet de nouveaux scénarios pour les développeurs. Pour plus d’informations sur les fonctionnalités du Kit de développement logiciel (SDK) JS Teams v2, consultez l’annonce suivante : le SDK JS Microsoft Teams v2 est désormais en disponibilité générale
Prise en charge des saisies teams-js v2
À partir de cette version, la context.sdks.microsoftTeams.teamJs
propriété dans le composant WebPart a le type de kit SDK teams-js v2. Cela permet d’utiliser les nouvelles fonctionnalités du Kit de développement logiciel (SDK) teams-js v2, y compris les nouveaux hôtes : Outlook et Office 365 application (précédemment appelée office.com).
Remarque
context.sdks.microsoftTeams.context
la propriété est marquée comme déconseillée. Elle retourne le contexte v1 à la place de la version 2. Utilisez context.sdks.microsoftTeams.teamJs.app.getContext
à la place.
Prise en charge de React 17
SPFx prend désormais en charge React 17 par défaut (généré automatiquement dans le cadre de la solution).
Possibilité de définir dataVersion dans le manifeste du composant WebPart
Définissez une version de données pour cette entrée préconfigurée. Cette option est facultative et peut être utilisée dans les cas où le SPPKG est mis à jour indépendamment du code (par exemple, hébergé sur un CDN). Les composants WebPart peuvent lire cette valeur à des fins de compatibilité descendante avec les propriétés par défaut obsolètes.
Possibilité d’utiliser des tâches et des intergiciels dans Microsoft Graph v3
À partir de cette version, les développeurs peuvent installer @microsoft/microsoft-graph-client
pour référencer des tâches ou des intergiciels à partir du Kit de développement logiciel (SDK), par exemple. LargeFileUploadTask
SPFx externalise automatiquement la dépendance et la charge à partir du CDN.
Remarque
Consultez Capacité à case activée versions prises en charge pour case activée la version du SDK MS Graph à installer.
MSGraphClientFactory
permet désormais de passer le Options
paramètre lors de l’initialisation du client. Il contient également une nouvelle méthode getClientWithMiddleware
pour initialiser le client avec un intergiciel (middleware).
Les développeurs peuvent également obtenir le client MS Graph instance à l’aide de MSGraphClientV3.client
la propriété . Cette instance peut être utilisée pour appeler des tâches MS Graph telles que le chargement de fichiers volumineux.
Le dossier CLUF a été supprimé des modules
Le dossier CLUF a été supprimé des modules. Les informations de licence sont désormais disponibles ici. Cette modification a réduit la taille de tous les modules SPFx chargés pendant la génération de modèles automatique.
Possibilité de case activée versions prises en charge de MS Graph et du SDK Teams
.yo-rc.json
le fichier contient sdksVersions
maintenant la propriété . Cette propriété contient la liste des versions prises en charge de MS Graph et du Kit de développement logiciel (SDK) Teams.
paramètre quietDeps pour SASS
Désormais, les développeurs peuvent définir la propriété dans pour config\sass.json
les quietDeps
avertissements de dépréciation en mode silencieux des dépendances.
Possibilité d’afficher ACE de manière asynchrone
Comme pour les composants WebPart, le développeur ACE peut spécifier si l’extension carte est rendue de manière asynchrone.
/* BaseAdaptiveCardExtension */
protected get isRenderAsync(): boolean {
return false;
}
public renderCompleted(didUpdate: boolean): void { /* ... */ }
Extension de carte adaptative Affichage de carte d’image pour avoir du alt
texte pour l’accessibilité
L’ajout d’une nouvelle propriété imageAltText
facultative pour IImageCardParameters
ajoute alt
l’attribut text à l’élément html image.
Nouvelles propriétés de contexte du personnalisateur de formulaire
Valeurs des champs d’élément de liste
Le contexte du personnalisateur de formulaire pour modifier et afficher les formulaires contient désormais les valeurs des champs d’élément de liste au format standard odata
.
IFormCustomizerContext.item?: IListItem;
Configuration de la mise en forme JSON des formulaires de liste
Le contexte du personnalisateur de formulaire fournit des informations sur la mise en forme JSON du formulaire de liste appliquée. Utilisez contentType
la propriété pour accéder à la configuration.
IFormCustomizerContext.contentType.ClientFormCustomFormatter: string | undefined;
Supprimer la prise en charge de NodeJS v12 et v14
Node.js v12 & v14 ne sont plus pris en charge. SPFx v1.16 nécessite Node.js v16.
Remarque
la prise en charge de Node.js v18 est prévue pour le premier semestre de l’année civile 2023.
Fonctionnalités et produits en préversion
Les fonctionnalités suivantes sont toujours en préversion status dans le cadre de la version 1.16 et ne doivent pas être utilisées en production. Nous envisageons de les publier officiellement dans le cadre de la prochaine version 1.17.
Principales actions du composant WebPart
Les actions principales permettent aux développeurs d’ajouter des actions personnalisées à la barre de commandes du composant WebPart. La fonctionnalité est similaire aux contrôles du volet de propriétés, mais basée sur une approche plus propre de l’interface utilisateur.
Remarque
Top Actions est publié en préversion dans le cadre de la version 1.16.
Pour ajouter les actions principales, les développeurs peuvent utiliser la getTopActionsConfiguration
méthode .
BaseWebPart.getTopActionsConfiguration(): ITopActions | undefined;
ITopActions
l’interface définit la configuration des actions principales.
export type ActionConfiguration = IPropertyPaneField<any>;
export interface ITopActions {
readonly topActions: ActionConfiguration[];
onExecute(actionName: string, newValue: any): void;
}
Remarque
Bien que le type de configuration de l’action principale soit IPropertyPaneField<any>
actuellement, nous prenons uniquement en charge les boutons et les groupes de choix.
Cela signifie que vous pouvez utiliser PropertyPaneChoiceGroup(...)
et PropertyPaneButton(...)
, ou spécifier vos propres configurations qui seront résolues en IPropertyPaneField<IPropertyPaneChoiceGroupProps>
et IPropertyPaneField<IPropertyPaneButtonProps>
Pour plus d’informations sur les instructions au niveau du code, consultez l’article suivant.
Dépréciations
- Package déconseillé @microsoft/office-ui-fabric-react-bundle . Utilisez @fluentui/react à la place.
- Context.sdks.microsoftTeams.context déconseillé. Utilisez context.sdks.microsoftTeams.teamJs.app.getContext à la place.
Problèmes résolus
Voici une liste de problèmes spécifiques résolus autour de SharePoint Framework depuis la version publique précédente.
période de August-November
- #8146 - SpFX Application Customizer interrompt les liens anonymes pour les fichiers PDF
- #8266 - SPFx 1.15 - Le personnalisateur de formulaire ne fonctionne pas dans l’historique des affichages
- #8272 - SPFx 1.15 - Erreur lors de l’utilisation d’un formulaire personnalisé pour afficher un élément de liste existant en mode classique
- #8279 - Nouvelles icônes dans les environnements de production
- #8301 - Erreur lors de la revisitation des équipes personnalisées ?app=portals App
- #8372 - Application d’autorisations sur le personnalisateur de formulaire
- #8379 - SPFx
ListViewCommandSet
-this.context.listView.selectedRows
est incorrect dans les listes groupées - #8467 - Boutons (
onClick
événements) dansBaseDialog
ne fonctionne plus - Jeu de commandes ListView - #8483 - Volets de propriétés du composant WebPart multipage - La pagination ne fonctionne pas comme prévu, empêchant les utilisateurs d’accéder aux pages
- #8484 - Sauts du volet de propriétés du composant WebPart lors de l’utilisation de React et d’office-ui-fabric-react dans l’étiquette de champ du volet de propriétés
- #8482 - React incompatibilité de version entraînant l’échec des extensions de liste SPFX dans O365
- #8487 - Mise à niveau de SharePoint React 17 provoquant l’erreur « Appel de crochet non valide » dans le composant WebPart SPFx
- #7324 - La licence SPFx n’autorise pas l’utilisation commerciale
- #8331 - Mécanisme permettant de versionner les préconfiguredEntries dans le manifeste
- #8510 - Erreur React React soudaine de SPFx #321
- #8496 - React incompatibilité de version entraîne l’affichage du volet de propriétés