Je fixe un formulaire de contact avec Gatsbyjs et avez besoin d'un dayspicker. Est-il possible d'utiliser des dates de réaction sur un composant apatride? J'ai essayé mais sans succès (puisque Les instructions font référence à une composante de classe que je ne fais pas vraiment savoir comment se comporter ici).
Ceci est un exemple de ma forme sans réacte-dates (j'utilise Formik): p>
<DateRangePicker startDate={this.state.startDate} // momentPropTypes.momentObj or null, startDateId="your_unique_start_date_id" // PropTypes.string.isRequired, endDate={this.state.endDate} // momentPropTypes.momentObj or null, endDateId="your_unique_end_date_id" // PropTypes.string.isRequired, onDatesChange={({ startDate, endDate }) => this.setState({ startDate, endDate })} // PropTypes.func.isRequired, focusedInput={this.state.focusedInput} // PropTypes.oneOf([START_DATE, END_DATE]) or null, onFocusChange={focusedInput => this.setState({ focusedInput })} // PropTypes.func.isRequired, />
3 Réponses :
Essayez d'injecter «ceci» comme un accessoire comme:
const ContactForm = (props) => ( ... // props.that .... ) // call it where you need it <ContactForm that = {this} ... > ... </ContactForm>
Juste résolu d'une autre manière (il suffit d'ajouter une nouvelle réponse), merci quand même!
Si vous souhaitez utiliser Ceci code>, ce n'est pas un bon cas d'utilisation pour créer des composants fonctionnels, pourquoi ne pas créer de composants de classe ici. Ce sera vraiment facile p>
Je sais que cela semble le choix le plus raisonnable, mais j'avais besoin de faire comme ça parce que j'essayais de le faire travailler avec Formik (sous Gatsby) et que Formik n'exige pas une fonction de classe. Quoi qu'il en soit, je le travaille (je viens d'ajouter une nouvelle réponse).
Je l'ai résolu grâce à cette réponse ici ici https://stackoverflow.com/a/55454138/2232626 p>
Je viens de créer un composant avec le composant de sélecteur de date, puis de l'importer lorsque la page Formik principale réside. Voici un exemple de travail: https://codesandbox.io/s/723L233my1 P>