React Formik で Field コンポーネントの onChange を処理しようとしていますが、うまくいきません。また、次の方法で Formik コンポーネントの外部で処理しようとしました。
handleChange(e) {
console.log('changing');
}
<Field type="radio" name="players" value="1" onChange={e => this.handleChange(e)}/>
しかし、私は警告を受けています:
コンポーネントは、タイプ テキストの制御されていない入力を制御されるように変更しています。入力要素は、制御されていない状態から制御されている状態 (またはその逆) に切り替えるべきではありません。
今のところ、私のコードは次のようになります。
<Formik
onChange={() => {
console.log('changing');
}}
onSubmit={(values) => {
console.log('submitted');
}}
>
{({ isSubmitting, handleChange }) => (
<Form>
<InputWrapper>
<span>1</span>
<Field type="radio" name="players" value="1" onChange={handleChange}/>
<span>2</span>
<Field type="radio" name="players" value="2" onChange={handleChange}/>
</InputWrapper>
<button type="submit" disabled={isSubmitting}>
{isSubmitting ? 'Loading..' : 'Start'}
</button>
</Form>
)}
</Formik>
ヒント/アイデアはありますか?