la variable form de mon composant change d'état sans que je le demande.
Bonjour,
voici la partie du script dont je ne comprends pas le fonctionnement:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
try {
console.log('la forme pour initiale: ', form)
console.log('la forme preparée: ', datasForRequest(form, 'creation'))
console.log('la forme apres preparation: ', form)
fetch('/api/animals', {
method: 'POST',
headers: {
'Content-Type': 'application/ld+json'
},
body: JSON.stringify(datasForRequest(form, 'creation'))
})... |
J'ai initialisé la variable form ainsi dans mon composant comme ceci: const [form, setForm] = useState(initForm)
Je me suis assuré que la valeur de initForm ne change jamais
Le premier console.log me renvoit:
Code:
1 2
| la forme pour initiale:
Object { animalName: "", description: "", diet: "", species: "", continents: [] } |
le second renvoit un objet préparé avec form:
Code:
1 2
| la forme preparée:
Object { animalName: "", description: "", diet: null, species: null, continents: [] } |
Je dois mettre les champs select à null pour récupérer les violations.
Et le troisième:
Code:
1 2
| la forme apres preparation:
Object { animalName: "", description: "", diet: null, species: null, continents: [] } |
Du coup je pose la question: par quelle magie , la variable form a été changée ...? J'avoue être surpris !
Est-ce un comportement normal ?
Merci de m'éclairer.
Laurent.