Loading
Erstellen einer eigenständigen benutzerdefinierten Lightning Webkomponente

Erstellen einer eigenständigen benutzerdefinierten Lightning Webkomponente

Ermöglichen Sie es benutzerdefinierten Lightning Webkomponenten, unabhängig von einem OmniScript zu agieren, indem Sie es dem OmniScript als eigenständige Komponente hinzufügen. Eigenständige benutzerdefinierte Lightning Webkomponenten können weder OmniScript-Elementkomponenten noch OmniScriptBaseMixin-Komponenten erweitern. Die eigenständige Komponente unterstützt benutzerdefinierte Funktionen, kann jedoch nicht mit einem OmniScript oder der Daten-JSON des OmniScripts interagieren.

  1. Überprüfen und erfüllen Sie die Anforderungen zum Erstellen einer eigenständigen benutzerdefinierten Lightning Web-Komponente. Entsprechende Informationen finden Sie unter Anforderungen an benutzerdefinierte Lightning Webkomponenten für OmniScripts.
  2. Erstellen Sie zusätzliche JSON-Knoten für Daten im benutzerdefinierten LWC-Element und übergeben Sie Werte aus dem Element mithilfe des Ereignisses "omniaggregate" an die neuen JSON-Knoten. Entsprechende Informationen finden Sie unter Erstellen und Zuordnen von Daten im benutzerdefinierten LWC-Element.

  3. Fügen Sie einem OmniScript die eigenständige benutzerdefinierte Lightning Webkomponente hinzu. Siehe Benutzerdefiniertes LWC-Element.

Erstellen und Zuordnen von Daten im benutzerdefinierten LWC-Element

Erstellen Sie zusätzliche JSON-Knoten für Daten im benutzerdefinierten LWC-Element und übergeben Sie Werte aus dem Element mithilfe des Ereignisses omniaggregate an die neuen JSON-Knoten.

Weitere Informationen zu Ereignissen finden Sie unter Erstellen und Disponieren von Ereignissen.

Ereignis: omniaggregate

  1. Erstellen Sie eine benutzerdefinierte Aggregatfunktion und legen Sie das omniaggregate auf eine Variable fest.
    Beispiel:
    customAggregate() {
        const eventName = 'omniaggregate'
    }
  2. Erstellen Sie eine Variable, um die Eingabedaten des LWC-Elements zu speichern.
    Beispiel:
    customAggregate() {
        const eventName = 'omniaggregate'
        const data = {
            anyKeyName : 'myElementData'
        };
    }
  3. Erstellen Sie ein Objekt, indem Sie die Daten den Schlüssel-Daten und einen Elementnamen der Schlüssel-Element-ID zuordnen.
    customAggregate() {
        const eventName = 'omniaggregate' 
        const data = {
            anyKeyName : 'myElementData'
        };
        const detail = {
            data: data,
            elementId: 'elementName2'
        };
    }
  4. (Optional) Fügen Sie im Detailobjekt das Schlüssel-Wert-Paar aggregateOverride: true ein, um alle vorhandenen Daten im Element "Benutzerdefiniertes LWC" zu überschreiben.
    customAggregate() {
        const eventName = 'omniaggregate' 
        const data = {
            anyKeyName : 'myElementData'
        };
        const detail = {
            data: data,
            elementId: 'elementName2',
            aggregateOverride: true
        };
    }
  5. Erstellen Sie ein neues Ereignisobjekt, das das Omniaggregat-Ereignis und ein Objekt mit den folgenden vier Eigenschaften weitergibt:
    • Blasen: Ein boolescher Wert, der bestimmt, ob das Ereignis im DOM auftaucht.
    • Abbrechbar: Ein boolescher Wert, der bestimmt, ob das Ereignis abgebrochen werden kann.
    • Zusammengesetzt: Ein boolescher Wert, der bestimmt, ob das Ereignis die Schattengrenze passieren kann.
    • detail: Im Ereignis übergebene Daten.
    Beispiel:
    omniAggregate() {
        const eventName = 'omniaggregate' 
        const data = {
            anyKeyName : 'myElementData'
        };
        const detail = {
            data: data,
            elementId: 'elementName2'
        };
        const myEvent = new CustomEvent(eventName, {
            bubbles: true,
            cancelable: true,
            composed: true,
            detail: detail,
        });
    }
  6. Rufen Sie this.dispatchEvent() auf und übergeben Sie das Ereignisobjekt als Parameter.

    Codebeispiel

    Beispiel für ein Daten-JSON-Ergebnis

    // code to call
    omniAggregate() {
        const eventName = 'omniaggregate' 
        const data = {
            anyKeyName : 'myElementData'
        };
        const detail = {
            data: data,
            elementId: 'elementName2'
        };
        const myEvent = new CustomEvent(eventName, {
            bubbles: true,
            cancelable: true,
            composed: true,
            detail: detail,
        });
        this.dispatchEvent(myEvent);
    }   
    "CustomLWC12": {
        "elementName1": {
            "prop": "prop1"
        },
        "elementName2": {
            "anyKeyName": "myElementData"
        }
    }
 
Laden
Salesforce Help | Article