{ }
Vue.js · TypeScript · Generics · script setup
script setup Generics
typisierte, wiederverwendbare Komponenten bauen
typisierte, wiederverwendbare Komponenten bauen
Eine Liste-Komponente, die Zeilen rendert, egal ob es sich um Benutzer, Produkte oder Bestellungen handelt, ist ein klassischer Fall für TypeScript-Generics, doch in einer Vue-Komponente fehlte lange die passende Syntax dafür. Seit Vue 3.3 unterstützt script setup ein eigenes generic-Attribut, mit dem sich Props, Emits und Slots typsicher an einen generischen Typparameter binden lassen, ohne auf any oder unknown auszuweichen. Das Ergebnis sind Komponenten, die sich wie generische Funktionen verhalten: einmal geschrieben, aber für beliebige, konkrete Item-Typen mit voller Autovervollständigung nutzbar.
15 Min. Lesezeit
1Ab welcher Vue-Version wird das generic-Attribut in script setup unterstützt?
Seit Vue 3.3. Vorherige Versionen kennen kein generic-Attribut auf dem script setup-Tag, generische Komponenten mussten davor umständlich über die Options API mit defineComponent nachgebildet werden.
2Wie deklariert man mehrere Typparameter gleichzeitig?
Als kommagetrennte Liste im generic-Attribut, genau wie in normalem TypeScript, zum Beispiel
Cookie-Details
| Name | Anbieter | Laufzeit | Zweck |
|---|---|---|---|
Cookie-Details
| Name | Anbieter | Laufzeit | Zweck |
|---|---|---|---|
Cookie-Details
| Name | Anbieter | Laufzeit | Zweck |
|---|---|---|---|
Cookie-Details
| Name | Anbieter | Laufzeit | Zweck |
|---|---|---|---|