J'essaie de détecter si l'état du formulaire est sale à partir d'un composant parent. Je ne peux donc afficher un bouton de soumission que si les valeurs de formulaire a ..Le sélecteur Redux-form v6 isDirty (et isPristine) ne déclenche pas de re-render sur changement d'état
la première render présente faux comme prévu, mais la modification des valeurs ne déclenche pas réengendrer avec le nouveau vlaue ..
import React from 'react'
import { isDirty } from 'redux-form'
import { connect } from 'react-redux'
<Parent>
{ props.isDirty ? <SubmitButton /> : null }
<Form {...etc} />
</Parent>
const mapStateToProps = state => ({
...
isDirty: isDirty('myForm')(state),
})
export default connect(mapStateToProps, null)(Parent)
Console journalisation props.isDirty
montre que lors de la première de rendre <Parent/>
isDirty
c'est faux. Toutefois, la modification des valeurs ne déclenche pas un nouveau rendu de <Parent/>
avec la nouvelle valeur.
Mise à jour:
Après une enquête plus approfondie, je pense que cela est un bug:
const mapStateToProps = (state) => {
console.log(isDirty('myForm')(state)
return {
...
isDirty: isDirty('myForm')(state),
}
Ici, l'évolution des valeurs de forme déclenche mapStateToProps
comme prévu, mais isDirty
est toujours faux.