Préallouer de l’espace pour les espaces réservés d’extension SharePoint Framework
Les personnaliseurs d’application peuvent être utilisés pour ajouter des structures et du contenu sur les pages modernes. Pour ce faire, vous pouvez utiliser des espaces réservé spécifiques dans la page, dans lesquels l’extensibilité personnalisée sera chargée. Comme les extensions sont chargées assez tard sur le cycle de vie de chargement de la page, il peut y avoir des mouvements de page supplémentaires lorsque les extensions sont ajoutées.
Notes
Cette fonctionnalité est uniquement prise en charge dans SharePoint Online.
Pour réduire le mouvement de page, vous pouvez pré-allouer la zone d’extension déjà côté serveur lors de la création de la structure de page. Cette configuration peut être appliquée à l’aide d’une nouvelle propriété au niveau de la collection pour indiquer, côté serveur, quels personnaliseurs d’application sont HostProperties UserCustomAction chargés sur la page.
Il existe deux propriétés spécifiques différentes, qui peuvent être utilisées avec la HostProperties configuration :
preAllocatedApplicationCustomizerTopHeight: hauteur pré-allouée pour l’espace réservé supérieurpreAllocatedApplicationCustomizerBottomHeight: hauteur pré-allouée pour l’espace réservé inférieur
La hauteur est définie en pixels.
Définition de l’allocation hostproperties dans SharePoint Framework solution
Vous pouvez définir l’allocation préalable côté serveur directement dans le code de la solution SharePoint Framework, ce qui garantit que la pré-allocation est appliquée lors de l’utilisation de la solution. La pré-allocation peut être définie dans leelements.xmlou dans les fichiers ClientSideInstance.xml, en fonction de la conception de votre solution.
La valeur des propriétés d’hôte doit être correctement codée dans les fichiers xml pour garantir la réussite de l’empaquetage de la solution.
Définition de la pré-allocation sur le déploiement d’étendue site
Si votre extension est conçue pour être installée sur une étendue site, vous pouvez configurer la pré-allocation à l’aide du fichier ./sharepoint/assets/elements.xml. La configuration incluse dans ce fichier est appliquée par défaut au site, lorsque SharePoint Framework solution est installée sur une étendue site.
Le fragment xml suivant a été mis à jour avec l’entrée supplémentaire et a défini la hauteur par HostProperties défaut à 50 pixels.
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<CustomAction
Title="HeaderDemo"
Location="ClientSideExtension.ApplicationCustomizer"
ClientSideComponentId="03dd08c7-2575-4336-899e-68cfce663c4d"
ClientSideComponentProperties="{"testMessage":"Test message"}"
HostProperties="{"preAllocatedApplicationCustomizerTopHeight":"50","preAllocatedApplicationCustomizerBottomHeight":"50"}">
</CustomAction>
</Elements>
Définir la pré-allocation à l’aide de l’option de déploiement à l’échelle du client
Les extensions qui sont ciblées pour être activées à l’aide des options de déploiement à l’échelle du client peuvent être configurées pour utiliser l’espace pré-alloué en ajoutant la propriété de l’élément dans le fichier HostProperties ClientSideComponentInstance ./sharepoint/assets/ClientSideInstance.xml.
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ClientSideComponentInstance
Title="HeaderDemo"
Location="ClientSideExtension.ApplicationCustomizer"
ComponentId="03dd08c7-2575-4336-899e-68cfce663c4d"
Properties="{"testMessage":"Test message"}"
HostProperties="{"preAllocatedApplicationCustomizerTopHeight":"50","preAllocatedApplicationCustomizerBottomHeight":"50"}">
</ClientSideComponentInstance>
</Elements>
HostPropertiesl’entrée de cette configuration sera ajoutée à l’entrée de liste Extensions à l’échelle du client dans la collection de sites catalogue d’applications, qui possède une colonne Propriétés de l’hôte pour chaque élément.
Considérations
Il existe quelques considérations à prendre en compte, en fonction de votre implémentation :
- Lorsque la hauteur donnée est trop grande, l’emplacement div aura un espace supplémentaire sur la position désignée. Si la hauteur est inférieure aux personnaliseurs d’application, les personnaliseurs d’application sont compressés dans l’espace réservé.
- Si vous avez défini une pré-allocation, mais que le personnaliste d’application ne crée pas d’espace réservé dans le code ou n’est pas associé à la page, l’espace alloué côté serveur reste sur la page.
Notes
HostPropertiespeut également être définie pour les personnaliseurs d’application existants, soit en modifiant l’objet CustomAction au niveau du site, soit à l’aide de la colonne Propriétés de l’hôte dans la liste Extensions à l’échelle du client sur le site de catalogue d’applications. Comme il s’agit d’un paramètre côté serveur, il peut également être appliqué aux extensions qui ont été conçues à l’aide d’SharePoint Framework versions antérieures.