AJAX Konfigurator



AJAX Konfigurator

1 0


ajax-variant-presentation


On Github ShopwareHackathon / ajax-variant-presentation

AJAX Konfigurator

Was hatten wir vor?

Zielsetzung

  • Das Neuladen der Seite bei bestimmten Modulen unterbinden.
  • Usability erhöhen
  • Geringere Ladezeiten
  • Kein (wenig) Latenz bei mobilen Geräten

Optionen

1

Kompletter Austausch

  • + Plugins brechen nicht
  • + Keine doppelte Pflege
  • + Einfache Implementierung
  • + Boardmittel reichen aus
  •  
  • - Komplettes HTML rendern & laden
  • - Höhere Response-Zeit wegen Smarty Parser
  • - Geringe Flexibilität
2

Austausch einzelner Elemente per JSON

  • + Geringere Ladezeit
  • + Höhere Flexibilität
  •  
  • - DOM Manipulation
  • - Hoher Implementierungsaufwand wegen Elementvielfalt

Wieso nicht gleich einen Schritt weiterdenken, wenn wir schon mit JSON arbeiten?

3

Live Data Binding

  • + Höchste Flexibilität
  • + Geringere Ladezeit
  • + Relativ automatisierter Prozess
  • + Client side templating
  • + Kann an verschiedensten Stellen genutzt werden
  •  
  • - Nicht mit Boardmitteln machbar (3rd party lib)
  • - Initialaufwand für Komponenten höher
  • - Clientseitig viel Logik & Templating

DEMO

Conclusion

  • sArticle muss für clientseitiges Templating aufbereitet werden. Beispiel: Lieferbarkeit wird als ID ausgegeben.
  • Zu hoher Aufwand für eine einzelne Komponente. Pespektivisch:
    • Warenkorb
    • Suggestion Search
    • Artikelvergleich
    • Zukunfstmusik: Einkaufswelten & Filter

Vorteile

  • JSON lädt bis zur 30% schneller
  • Volle Flexibilität
  • Server as a Service
  • FE erfüllt seine eigentliche Aufgabe: Darstellung
  • Nutzung der Dienste über mobile Geräte werden viel fließender

Vielen Dank für eure Aufmerksamkeit