Ich benutze Express-Validator in Knoten, um meine Formulare zu validieren, sobald ich meine Validierung Ergebnis voller Fehler zurückgegeben werden sie durch ein Objekt (das ist, was ich habe):Verschachtelte Objekte sind ein String - brauche sie als Objekte
{ email:
{ param: 'email',
msg: 'Email address must be between 4-100 characters long, please try again.',
value: '' },
name:
{ param: 'name',
msg: 'Name must be between 3-20 characters long.',
value: '' },
password:
{ param: 'password',
msg: 'Password must include one lowercase character, one uppercase character, a number, and a special character.',
value: '' },
passwordc:
{ param: 'passwordc',
msg: 'Password must be between 8-50 characters long.',
value: '' } }
Das Problem, das ich habe, ist, dass dies ein "String" ist und leider nicht vom Objekttyp. Ich muss dies in das umsetzen, was es sein soll, ein Objekt mit verschachtelten Objekten.
Ich kann JSON.parse nicht verwenden, da dies kein gültiger JSON ist.
Wie kann ich diese Objektkette in ein Objekt ändern? Dies ist so, dass ich die relevanten Fehler durchlaufen und anzeigen kann.
Danke für Ihre Hilfe. P. Ich bin super dabei - also, wenn Sie die Antwort darauf wissen, dann zeigen viele von Brownie von mir zu Ihnen. Prost!
Ihr JSON ist gültig, warum können Sie in diesem Fall 'JSON.parse' nicht verwenden? –
Sie können dies mit JSONLint überprüfen, es ist nicht gültig. Gültige JSON sollte doppelte Anführungszeichen haben, nicht einzelne, und auch alle Schlüssel sollten doppelte Anführungszeichen um sie herum haben. Die einzige Möglichkeit, die ich JSON.parse kann, ist nach zu vielen regulären Ausdrücken zu laufen, und das ist kein guter Weg, weil sich die Schlüsselnamen ändern können. Ich bin wirklich ratlos! – Notorious
Ich bin verwirrt, das ist ein gültiges JavaScript-Objekt und keine Zeichenfolge. – str