Gunnar Bittersmann: Wenn zwei (Validator und Unit-Test) sich streiten, ärgert sich der dritte (ich)

Beitrag lesen

@@Christian Kruse

Genau genommen würde ich nichtmal die Heading-Komponente bauen, wenn sie wirklich nur ein h1 mit entsprechendem Level generiert.

Das Beispiel war schon etwas abgespeckt. Statt {{ text }} ist in Wirklichkeit da etwas Struktur drin. Außerdem …

Warum sollte man dann nicht direkt h1 bis h6 verwenden?

… weil die Heading-Komponente nichts vom Kontext weiß, in dem sie verwendet wird. Sie steht beispielsweise in einer Section-Komponente, welche ineinander verschachtelt werden können. Um eine saubere Überschriftenhierarchie hinzubekommen, übergibt man das jeweilige Level von außen – womöglich gar aus einer Berechnung (Outline-Algorithmus).

Für <Heading :level="Math.PI" text="Quadratur des Kreises"/> bedarf es schon Boswilligkeit. (Ohne Fehlerbehandlung würde <h3.1415926…>Quadratur des Kreises</h3.1415926…> rauskommen.) Aber gegen Level 7, 8, 9, … möchte man sich schon absichern.

LLAP 🖖

--
„Man kann sich halt nicht sicher sein“, sagt der Mann auf der Straße, „dass in einer Gruppe Flüchtlinge nicht auch Arschlöcher sind.“
„Stimmt wohl“, sagt das Känguru, „aber immerhin kann man sich sicher sein, dass in einer Gruppe Rassisten nur Arschlöcher sind.“

—Marc-Uwe Kling