Bonsoir,
je vais essayer de résumer mon souci le plus clairement:
dans une classe parent, des composants ( enfants )de texte, et de selection
voici le render:
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 render() { return <div className="mx-auto mt-4 col-4"> <form onSubmit={this.insertAnimal}> <h1>Enregistrer des données</h1> <DataFieldText passData={this.handleChange} name="animalsName"> Nom commun </DataFieldText> <DataFieldSelect name="continents" passData={this.handleChange}> Continent </DataFieldSelect> <DataFieldSelect name="species" passData={this.handleChange}> Espèce </DataFieldSelect> <DataFieldSelect name="diets" passData={this.handleChange}> Régime alimentaire </DataFieldSelect> <button className="btn btn-primary w-100 mt-4" > Enregistrer l'animal</button> </form> </div> } }
les "name" serviront à requêter les tables du même nom dans la bdd et qui permettront de récupérer de quoi remplir les options d'un select
les passData sont les callback qui permettent de rapatrier les données pour enregistrer les données d'un animal dans la BDD
Si je clique ( sur le seul bouton de ma page ) et qu'il n'y a pas d'erreurs, un animal est enregistré , mais ma page ne "bouge pas":
il y a toujours le nom de l'animal affiché et les sélections idem, alors qu'initialement, les champs texte sont vides et les sélections aussi.
Je souhaiterais juste remettre à zéro, ce qui se fait lorsque j'arrive sur la page ( le rendu initial ) , mais à la soumission, il n'y a aucun rendu.
Donc je ne sait pas comment "forcer la remise à zéro: un nouveau rendu des enfants, déclenché au click
Ça doit pouvoir se faire, mais plus je passe de temps ( trop de temps ) et moins je vois de solution !
Merci d'avance et bonne soirée,
Laurent.
Partager