Vorabzuweisung von Speicherplatz für SharePoint Framework-Erweiterungsplatzhalter
Application Customizer können verwendet werden, um Strukturen und Inhalte auf den modernen Seiten hinzuzufügen. Dies kann mithilfe bestimmter Platzhalter auf der Seite erreicht werden, in die dann die benutzerdefinierte Erweiterbarkeit geladen wird. Da die Erweiterungen im Lebenszyklus des Seitenladevorgangs ziemlich spät geladen werden, kann es beim Hinzufügen der Erweiterungen zu zusätzlichen Seitenbewegungen kommen.
Hinweis
Dieses Feature wird nur in SharePoint Online unterstützt.
Um die Seitenbewegung zu reduzieren, können Sie den Erweiterungsbereich bereits auf der Serverseite zuordnen , wenn die Seitenstruktur erstellt wird. Diese Konfiguration kann mithilfe einer neuen HostProperties
Eigenschaft in der UserCustomAction
Auflistung angewendet werden, um auf der Serverseite anzugeben, welche Application Customizer auf die Seite geladen werden.
Es gibt zwei verschiedene spezifische Eigenschaften, die mit der HostProperties
Konfiguration verwendet werden können:
preAllocatedApplicationCustomizerTopHeight
: Vorab zugewiesene Höhe für den obersten PlatzhalterpreAllocatedApplicationCustomizerBottomHeight
: Vorab zugewiesene Höhe für den unteren Platzhalter
Die Höhe wird in Pixeln definiert.
Definieren der HostProperties-Zuordnung in SharePoint-Framework Lösung
Sie können die serverseitige Vorabzuordnung direkt im SharePoint-Framework Lösungscode definieren, der dann sicherstellt, dass die Vorabzuordnung angewendet wird, wenn die Lösung verwendet wird. Die Vorabzuordnung kann je nach Lösungsentwurf entweder im elements.xml oder in den ClientSideInstance.xml-Dateien definiert werden.
Der Wert der Hosteigenschaften muss in den XML-Dateien ordnungsgemäß codiert werden, um sicherzustellen, dass die Verpackung der Lösung erfolgreich ist.
Definieren der Vorabzuordnung für die Bereitstellung mit Standortbereich
Wenn Ihre Erweiterung so konzipiert ist, dass sie auf einem Websitebereich installiert wird, können Sie die Vorabzuordnung mithilfe der Datei ./sharepoint/assets/elements.xml konfigurieren. Die in dieser Datei enthaltene Konfiguration wird standardmäßig auf die Website angewendet, wenn SharePoint-Framework Lösung auf einem Websitebereich installiert ist.
Das folgende XML-Fragment wurde mit dem zusätzlichen HostProperties
Eintrag aktualisiert und die Standardhöhe auf 50 Pixel festgelegt.
<?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>
Definieren der Vorabzuordnung mithilfe der mandantenweiten Bereitstellungsoption
Erweiterungen, die mithilfe der mandantenweiten Bereitstellungsoptionen aktiviert werden sollen, können so konfiguriert werden, dass der vorab zugewiesene Speicherplatz verwendet wird, indem Eigenschaft für das ClientSideComponentInstance
Element in der Datei ./sharepoint/assets/ClientSideInstance.xml hinzugefügt HostProperties
wird.
<?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>
HostProperties
Der Eintrag aus dieser Konfiguration wird dem Listeneintrag " Mandantenweite Erweiterungen" in der App-Katalog-Websitesammlung hinzugefügt, die für jedes Element eine Spalte " Hosteigenschaften" enthält.
Überlegungen
Je nach Implementierung sind einige Aspekte zu beachten:
- Wenn die angegebene Höhe zu hoch ist, hat das div-Element zusätzlichen Platz auf der angegebenen Position. Wenn die Höhe kleiner als die Application Customizer ist, werden die Application Customizer in den Platzhalter komprimiert.
- Wenn Sie eine Vorabzuordnung definiert haben, der Application Customizer jedoch keinen Platzhalter im Code erstellt oder nicht auf der Seite zugeordnet ist, verbleibt serverseitig zugewiesener Speicherplatz auf der Seite.
Hinweis
HostProperties
kann auch für vorhandene Application Customizer definiert werden, die entweder das CustomAction-Objekt auf Websiteebene ändern oder indem die Spalte " Hosteigenschaften" in der Liste der mandantenweiten Erweiterungen auf der App-Katalogwebsite verwendet wird. Da es sich um eine serverseitige Einstellung handelt, kann sie auch auf Erweiterungen angewendet werden, die mit älteren SharePoint-Framework-Versionen erstellt wurden.