Ti trovi qui:
Creazione di un componente Web Lightning personalizzato indipendente
Abilitare i componenti Web Lightning personalizzati per agire in modo indipendente da un OmniScript aggiungendolo all'OmniScript come componente indipendente. I componenti Web Lightning personalizzati indipendenti non possono estendere alcun componente dell'elemento Omniscript o il componente OmniscriptBaseMixin. Il componente indipendente supporta le funzionalità personalizzate, ma non può interagire con un OmniScript o con il JSON dei dati OmniScript.
- Rivedere e completare i requisiti per la creazione di un componente Lightning Web personalizzato indipendente. Vedere Requisiti per componenti Web Lightning personalizzati per OmniScript.
-
Creare nodi JSON di dati aggiuntivi nell'elemento LWC personalizzato e passare i valori dall'elemento ai nuovi nodi JSON utilizzando l'evento
omniaggregate. Vedere Creazione e mappatura dei dati all'interno dell'elemento LWC personalizzato. - Aggiungere il componente Web Lightning personalizzato indipendente a un OmniScript. Vedere Elemento LWC personalizzato.
Vedere anche:
Creazione e mappatura dei dati all'interno dell'elemento LWC personalizzato
Costruire ulteriori nodi JSON di dati nell'elemento LWC personalizzato e passare i valori dall'elemento ai nuovi nodi JSON utilizzando l'evento omniaggregate.
Per ulteriori informazioni sugli eventi, vedere Creazione e invio di eventi.
Evento: omniaggregate
-
Creare una funzione di aggregazione personalizzata e impostare l'evento
omniaggregatesu una variabile.Esempio:customAggregate() { const eventName = 'omniaggregate' } -
Creare una variabile per memorizzare i dati di input dell'elemento LWC.
Esempio:
customAggregate() { const eventName = 'omniaggregate' const data = { anyKeyName : 'myElementData' }; } -
Costruire un oggetto mappando i dati ai dati chiave e il nome di un elemento all'ElementalId chiave.
customAggregate() { const eventName = 'omniaggregate' const data = { anyKeyName : 'myElementData' }; const detail = { data: data, elementId: 'elementName2' }; } -
(Facoltativo) Nell'oggetto dettaglio, includere la coppia chiave-valore
aggregateOverride: trueper ignorare tutti i dati esistenti nell'elemento LWC personalizzato.customAggregate() { const eventName = 'omniaggregate' const data = { anyKeyName : 'myElementData' }; const detail = { data: data, elementId: 'elementName2', aggregateOverride: true }; } -
Creare un nuovo oggetto evento che passa l'evento Omniaggregazione e un oggetto contenente le seguenti quattro proprietà:
- bolle: Un valore booleano che determina se l'evento viene riportato in bolla nel DOM.
- annullabile: Un valore booleano che determina se l'evento è annullabile.
- composto: Un valore booleano che determina se l'evento può passare attraverso il confine ombra.
- dettaglio: Dati passati nell'evento.
Esempio: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, }); } -
Chiamare
this.dispatchEvent()e passare l'oggetto evento come parametro.Esempio di codice
Esempio di risultato JSON dei dati
// 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" } }
Quali sono le prossime novità: Aggiunta di un componente Web Lightning personalizzato a un elemento LWC personalizzato.
