Aurelia + DevExtreme
Ich verwende beruflich sowohl Aurelia als auch DevExtreme, die HTML5-Komponten von DevExpress.
Bei Aurelia handelt es sich um ein JavaScript Client Framework, welches unter der Leitung von Rob Eisenberg entwickelt wurde. Obwohl es leider nicht so große Popularität hat wie z.B. Angular oder React, bin ich dennoch überzeugt, dass es vom Aufbau, der Funktionsweise und der Performance beiden vorgenannten auf alle Fälle das Wasser reichen kann. Aktuell ist Version 2 vNext in Arbeit, womit viele Themen noch weiter verbessert werden.
DevExtreme kann von Haus aus mit AngularJS, Angular, React und Vue verwendet werden. Aurelia wird von DevExpress selbst nicht unterstützt. Das ist allerdings nicht weiter tragisch, da DevExtreme auch mit Vanilla Javascript, also ohne den Einsatz von anderen Frameworks, verwendet werden kann und Aurelia sowieso sehr offen gestaltet ist.
Daher habe ich selbst ein Aurelia-Element erstellt, welches die Verwendung von DevExtreme vereinfacht. Das ganze ist auf GitHub unter https://github.com/stenet/au-dx. Dort gibt es auch ein Beispiel für die Verwendung des Elements.
Mir persönlich gefällt es wesentlich besser, die Optionen für die Konfiguration eines komplexen Elements nicht direkt in HTML-Datei zu schreiben, da diese damit sehr schnell sehr unübersichtlich wird. DevExpress hat bei AngularJS (also der ersten Version von Angular) auch diese Art verwendet, bei Angular 2+ dann aber dazu gewechselt, alles in den HTML-Code zu nehmen.
Wo ich gerade bei Angular bin. Den Hype zu Angular habe ich nie verstanden. Ich habe mir es bei der Veröffentlichung von Version 2 angeschaut, und war alles andere als begeistert. Die Nutzung ist meiner Meinung nach unnötig aufwändig. Lange Zeit dachte ich, ich sei der einzige der so denkt. Allerdings wurde 2018 eine Umfrage unter 20.000 Entwicklern gemacht. Dort haben 23,9 % angegeben, dass sie Angular bereits verwendet und wieder verwenden würden und 33,8 %, dass sie es bereits verwendet und NICHT mehr verwenden würden. Das spricht für sich. Die Umfrage ist unter https://2018.stateofjs.com/front-end-frameworks/overview/ aufrufbar.
Zurück zum eigentlichen Thema. Wer meinen o.g. Code ansieht, wird feststellen, wie einfach die Anforderung umzusetzen war. Vielleicht verwenden dadurch mehr Personen Aurelia 😀.