Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Um eine Änderung oder Aktion im Konfigurator auszuführen, sollte die Change-Methode verwendet werden. Dabei sollte die payload entsprechend angepasst werden und eine action hinzugefügt werden und this.configurator.change aufgerufen werden. Danach wird in PHP das Event Shop\Configurator\Lib\Event\OnExecuteChange ausgeführt und man kann auf seine action und die geänderte payload reagieren. Um Feedback oder Änderungen der Payload zurück in die Ui zu liefern, sollten StackActions (Http\Response\AdvancedResponseStackElementAbstract) verwendet werden.

Hinweis: Falls eigene Daten für in der Payload mitgeschickt werden sollen, sollten diese auch in OnPopulatePayload hinzugefügt werden. Nicht nur beim Request im js. Siehe auch Abschnitt für Payload.

Codeblock
languagejs
themeRDark
titleBeispiel js quantity change
collapsetrue
// ...

async myChangeAction() {

	if (
        false === this.configurator.blocked &&
        this.configurator.payload.hasOwnProperty('cartSessionArticle') &&
        this.configurator.payload.cartSessionArticle.shopSessionArticleQuantity !== this.quantity
    ) {
        this.configurator.payload.cartSessionArticle.shopSessionArticleQuantity = this.quantity
        this.configurator.payload.actions.push('MyChangeAction')
    
        this.configurator.change()
    }
}

// ...

...