Der Plan ist, eine App mit einer hierarchischen Datenstruktur zu entwickeln. Um die Daten zu validieren, wird Zod verwendet, um eine rekursive Struktur zu erstellen. Das Basis-Kategorien-Schema wird mit Eigenschaften für Name, Prozentsatz, Betrag und Prozentsätze definiert. Der Kategorien-Typ wird als Basis-Kategorien-Schema mit einer zusätzlichen Eigenschaft für Kategorien definiert, die ein Array des gleichen Kategorien-Typs ist. Das Kategorien-Schema wird dann mithilfe der lazy-Funktion von Zod erweitert, um ein Array von Kategorien zu enthalten. Dies ermöglicht es dem Kategorien-Schema, sich selbst zu referenzieren, bevor es vollständig initialisiert ist. Der Kategorien-Schema-Typ wird dann als abgeleiteter Typ des Kategorien-Schemas definiert. Ein Test-Daten-Objekt wird erstellt, um die hierarchische Struktur zu demonstrieren, mit Kategorien und Unterkategorien. Das Test-Daten-Objekt enthält Eigenschaften für Betrag, Name, Kategorien und Prozentsätze. Die Prozentsätze-Eigenschaft ist ein Array von Objekten mit Name- und Prozentsatz-Eigenschaften.
dev.to
Zod and Data modelling
