Stap {{ cursor() + 1 }} van {{ steps().length }}
+ + } + @case ('Submitting') { +
+
+ Vijf functionele patronen die atomic design makkelijker maakt om te tonen — telkens + "fout" (de oude vorm liet het toe) naast "goed" (het type maakt het onmogelijk). +
-Fout — vlakke interface
-{{ unionBad }}
- Een doorgehaalde registratie houdt tóch een herregistratiedatum: onmogelijke toestand.
+Laat elke variant precies de gegevens dragen die kloppen — niets meer.
+Fout — vlakke interface
+ +Een doorgehaalde registratie houdt tóch een herregistratiedatum: onmogelijke toestand.
+Goed — sum type
+De variant Doorgehaald kent geen herregistratiedatum, dus de rij bestaat simpelweg niet.
Goed — sum type
-De variant Doorgehaald kent geen herregistratiedatum, dus de rij bestaat simpelweg niet.
Eén molecuul, vier elkaar uitsluitende toestanden
-Loading
-Empty
-Failure
-Success
-Eén waarde met vier elkaar uitsluitende toestanden in plaats van drie losse booleans.
+Vier toestanden, één molecuul
+Loading
+Empty
+Failure
+Success
+De exhaustieve fold
+ +Een nieuwe variant toevoegen breekt de compile via assertNever tot je hem afhandelt.
De exhaustieve fold
-{{ foldCode }}
- Een nieuwe variant toevoegen breekt de compile via assertNever tot je hem afhandelt.
Smart constructor → Result
-Na het parsen onthoudt het type dat de waarde geldig is.
+Smart constructor → Result
+ok
+Postcode = "{{ $any(parsed()).value }}"
+ Een gevalideerde Postcode is een ander type dan een ruwe string.
err
+{{ $any(parsed()).error }}
+ }
+ ok
-Postcode = "{{ parsed().ok ? $any(parsed()).value : '' }}"
- Een gevalideerde Postcode is een ander type dan een ruwe string.
err
-{{ $any(parsed()).error }}
- }
- Fout — losse booleans
-{{ machineBad }}
- Niets verhindert "submitting" mét validatiefouten of een successcherm met errors.
+ +Eén tagged union stuurt de UI. Speel met de wizard — de gemarkeerde toestand is de huidige.
+Fout — losse booleans
+ +Niets verhindert "submitting" mét validatiefouten of een successcherm met errors.
+Goed — één tagged union
+Goed — één tagged union stuurt de UI
-
+ Welke stappen bestaan is geen opgeslagen toestand maar een pure functie van de antwoorden
+ (visibleSteps(answers)). Antwoord "ja" op buitenland of vul weinig uren in, en de
+ lijst hieronder groeit mee.
+
Live afgeleide stappen
+De gestippelde stappen verschijnen alleen door eerdere antwoorden. De voortgang "van N" verandert mee.
+De wizard
+