Я пытаюсь обернуть NumberPicker реагирующих виджетов в функциональный компонент, который обновляет состояние при срабатывании onChange
.
Когда я нажимаю на стрелку вверх или вниз в средстве выбора, он начинает мерцать как если он в реферре / рендеринге l oop. Я уменьшил код до следующего, который повторяет ошибку для меня.
Я использую React 16.13.1
, реагировать-виджеты 4.5.0
, реагировать-виджеты-просто-число 4.1.24
import React, { useState } from 'react';
import NumberPicker from 'react-widgets/lib/NumberPicker';
import simpleNumberLocalizer from 'react-widgets-simple-number';
simpleNumberLocalizer();
export default function TestPicker(props) {
const [myVar, setMyVar] = useState(5);
function Picker() {
return (
<NumberPicker value={myVar} onChange={setMyVar} />
);
}
return (
<div>
<Picker />
</div>
);
}
Если я уберу компонент из функции, он будет работать нормально:
import React, { useState } from 'react';
import NumberPicker from 'react-widgets/lib/NumberPicker';
import simpleNumberLocalizer from 'react-widgets-simple-number';
simpleNumberLocalizer();
export default function TestPicker(props) {
const [myVar, setMyVar] = useState(5);
return (
<div>
<NumberPicker value={myVar} onChange={setMyVar} />
</div>
);
}
Есть идеи, почему это не так, как ожидалось?