HTML Datagrid layout ako Webcomponent

Dostal som taku ideu a chcel by som druhy nazor (ako sa preklada second opinion?).

Mam v Blazore napisany vlastny DataGrid s css grid layoutom (display:grid), ktory som napisal este v case, ked neboli k dispozicii kvalitne alternativy.

Funguje to tak, ze mam zakladne layout komponenty pre stavbu datagridu so vsetkymi moznymi callackmi, ktore je treba pre napojenie na data a k interakcii.

Nad tym mam potom vystavany AdvancedGrid namieru pre konkretny projekt, ktory riesi napriklad export do excelu a podobne.

No a mna napadlo, ze preco by tieto zakladne stavebne prvky nemohli byt implementovane ako custom elements (WebComponents)?

V principe ide o to, ze port do akehokolvek UI (html/js) frameworku by bol jednoduchy a nemuselo by sa koleso vymyslat stale odznova

Pre lepsiu predstavu:

  1. GridLayout
  2. Row
  3. Cell
  4. ColumnHeader
  5. VirtualizingScrollviewer
  6. ContextMenu
  7. FilterEditor atd…

Myslite, ze custom-elements je na toto vhodne? Nebol by napriklad problem s rendering performance? Neviem napriklad, ci su custom-elements vhodne mnohopocetne elementy typu GridCell

WebComponents majú jednu malú nevýhodu. Potrebujú dotiahnúť extra javascript a negenerujú sa teda natívne, ale potrebuju repaint. Takže záleži, ako to implementuješ, ak nejaké rozšírenie existujúcej tabuľky, elementu ( Custom Elements v1 - Reusable Web Components | Articles | web.dev), alebo nový element.
Ťažko posúdiť, či ide o appku, alebo o “statickú” web stránku, ale ak ide o appku, tak custom elementy sú veľmi vhodné, pretože prežijú aj switch na iný framework.