Реагировать Formik с ошибкой типа Ant InputNumber - PullRequest
0 голосов
/ 21 февраля 2020

Я выполняю проекты муравьев InputNumber с Formik Field. Я продолжаю получать ту же ошибку, которая: Uncaught TypeError: Cannot read property 'type' of undefined. Стек вызовов этой ошибки погружается где-то глубоко в formik.

Мой код очень прост:

import React from 'react';
import { Formik, Form, Field } from 'formik';
import { InputNumber } from 'antd';

export const FormExample = () => (
  <Formik>
    {props => (
      <Form>
        <Field
          as={InputNumber}
          name="number"
        />
      </Form>
    )}
  </Formik>
)

Вы уже поняли, что здесь происходит? Когда я ставлю InputNumber обычно без <Field /> все работает нормально, но я хочу иметь правильную интеграцию с formik.

Спасибо за помощь!

1 Ответ

0 голосов
/ 23 февраля 2020

Вам необходимо подключить onChange и value InputNumber к Formik.

Пример кодов и ящиков: https://codesandbox.io/s/rough-feather-nmm04

export default function App() {
  const handleChange = (name, setFieldValue) => value => {
    setFieldValue(name, value);
  };

  return (
    <Formik initialValues={{ number: 222 }}>
      {props => (
        <Field
          as={InputNumber}
          name="number"
          onChange={handleChange("number", props.setFieldValue)}
          value={props.values.number}
        />
      )}
    </Formik>
  );
}
...