Hapi / Joi-Validierung mit verschachteltem Objekt

8

Ich habe folgende Validierung auf einer meiner Routen:

%Vor%

Ich versuche es so zu machen, dass containsAny oder containsAll mindestens eine Zeichenkette enthalten müssen. Wenn containsAny leer ist, sollte containsAll mindestens ein Element haben. Und wenn containsAll leer ist, sollte containsAny mindestens ein Element enthalten.

Aber es scheint, dass Joi.when nicht wirklich funktioniert, wenn es um ein Array von Objekten geht.

    
woutr_be 18.11.2015, 02:27
quelle

1 Antwort

5

Sie müssen Joi.alternatives() verwenden, ansonsten erstellen Sie ein Rundschreiben Abhängigkeit wie in dieses Problem beschrieben.

In der Bedingung is in when() müssen Sie einen Joi-Typ anstelle eines leeren Arrays angeben. Dieses Beispiel funktioniert:

%Vor%

Die Variable obj schlägt die Validierung fehl, weil sowohl first als auch second leer sind. Wenn Sie beide nicht leer lassen, wird die Validierungsprüfung bestanden.

    
Cuthbert 19.11.2015, 14:37
quelle

Tags und Links