Eingebettete Widgets
Betten Sie ein Widget in die HTML-Vorlage, das Serverskript oder das Clientskript ein.
Betten Sie ein Widget in eine HTML-Vorlage ein
<widget></widget>, um ein Widget in eine HTML-Vorlage einzubetten. Übergeben Sie die ID des Widgets, das Sie als Parameter einbetten möchten.<div>
<widget id="widget-cool-clock"></widget>
</div><widget id="widget-cool-clock" options='{"zone": "America/Los_Angeles","title": "San Diego, CA"}'></widget>- HTML-Vorlage
<widget id="widget-cool-clock" options='data.clockOptions'></widget>- Serverskript
(function() { data.clockOptions = {"zone": "America/Los_Angeles","title": "San Diego, CA"}; })();
Betten Sie ein Widget in ein Clientskript ein
spUtil.get("widget-sc-cat-item", {sys_id: "your_catalog_item_sys_id"}).then(function(response) {
c.catalogItemWidget = response;
});Bei Verwendung der Klasse spUtil in einem Widget-Clientskript müssen Sie die Klasse in die Clientskriptfunktion einfügen. Im folgenden Beispiel wird das Cool Clock-Widget eingebettet:
- Clientskript
function(spUtil) { var c = this; spUtil.get("widget-cool-clock").then(function(response) { c.myClockWidget = response; }); }- HTML-Vorlage
<sp-widget widget="c.myClockWidget"></sp-widget>
Betten Sie ein Widget in ein Serverskript ein
data.catalogItemWidget = $sp.getWidget("widget-sc-cat-item");Im folgenden Beispiel wird das Cool Clock-Widget eingebettet:
- Serverskript
(function() { var coolClockOptions = {"zone": "America/Los_Angeles","title": "San Diego, CA"} data.coolClockWidget = $sp.getWidget('widget-cool-clock', coolClockOptions); })();- HTML-Vorlage
<sp-widget widget="data.coolClockWidget"></sp-widget>
Widget-Modelleigenschaften
Wenn ein Widget-Modell von einem anderen Widget aus aufgerufen wird, werden die HTML-Vorlage, das Clientskript und die Verknüpfungsfunktion genauso wie im Datensatz sp_widget geladen. Die Dateneigenschaft ist das Ergebnis der Ausführung des Widget-Serverskripts. Alles, was Sie dem Datenobjekt auf dem Server hinzufügen, ist im Datenobjekt des Clients verfügbar.
| Eigenschaftsname | Typ | Beschreibung |
|---|---|---|
| client_script | String | Widget-Clientskriptfeld. |
| css | String | Kompilierte CSS-Ausgabe aus dem SASS-Feld für das Widget. |
| Daten | Objekt | Datenobjekt, das Schlüssel und Werte aus dem Widget-Serverskript enthält. |
| Abhängigkeiten | array | Alle Bibliotheken von Drittanbietern, die geladen werden sollen, bevor das Widget ausgeführt wird. |
| Optionen | Objekt | Optionen zum Initialisieren des Widgets. |
| Vorlage | String | HTML-Vorlagenfeld für das Widget. |
Betten Sie ein Widget mehrmals mit benutzerdefinierten Optionen ein
Betten Sie das Cool Clock-Widget mehrmals mit benutzerdefinierten Optionen ein.
Vorbereitungen
Erforderliche Rolle: admin oder sp_admin
Warum und wann dieser Vorgang ausgeführt wird
Erstellen Sie ein Widget, das mehrere Instanzen des Cool Clock-Widget mit unterschiedlichen Zeitzonen und Titeln enthält. Öffnen Sie das Widget „Cool Clock“ im Widget-Editor, um Widget-Optionen anzuzeigen, auf die in der HTML-Vorlage und im Clientskript verwiesen wird.
Prozedur
Ergebnisse
Jede Instanz der Uhr im eingebetteten Uhr-Widget wird mit einer anderen Zeitzone angezeigt.