CodiceTypeError: Non deve corrispondere contro 'indefinito' o 'nullo'
client.createPet(pet, (err, {name, breed, age}) => {
if (err) {
return t.error(err, 'no error')
}
t.equal(pet, {name, breed, age}, 'should be equivalent')
})
errore
client.createPet(pet, (err, {name, breed, age}) => {
^
TypeError: Cannot match against 'undefined' or 'null'.
Perche 'si ottengono questo errore? La mia conoscenza dell'ES6 mi ha portato a presumere che questo errore dovrebbe verificarsi solo se l'array o l'oggetto che viene distrutto oi suoi figli è undefined
o null
.
Non ero a conoscenza del fatto che i parametri di funzione sono utilizzati come corrispondenza. E se lo sono allora perché è solo un errore se provo a distruggere uno di loro? (che non è undefined
o null
).
Hai ragione, ho fuorviato dalla freccia nel messaggio di errore –
@PrashanthChandra Se si guarda da vicino, la freccia in realtà indica la parentesi di apertura, non errore :-) – thefourtheye
Si tratta di un peccato che una funzionalità rilasciata di recente non contenga un messaggio più informativo e utile – Elad