Как интегрировать текстовый ввод antd-mobile как управляемый компонент с понижением частоты?

Я хотел бы использовать автозаполнение при пониженной передаче в моем веб-приложении antd-mobile. Мне нравится пониженная передача, поскольку она рендерит внешние компоненты.

К сожалению, я не мог понять, как "связать" один из двух элементов ввода текста из antd-mobile. Компоненты предлагают "контролируемый" режим, но я не смог найти соответствующие документы.

Просто передавая на getInputProps() с понижением не работает:

<InputItem {...downshift.getInputProps()} />

броски вниз:

Uncaught TypeError: Cannot read property 'value' of undefined

Это происходит, когда чтение пониженной передачи event.target.value на единственный предоставленный аргумент обратного вызова (event компонентом antd-mobile (обратный вызов) onChange()). Это имеет смысл, поскольку в anti-mobile api-doc говорится, что возвращается значение типа 'string' для ввода текста.

Итак, как мне получить оригинальную реакцию <input> составная часть onChange обратный вызов из компонента antd-mobile для его передачи?

Глядя в источник: я потерял трек здесь. onChange обратный вызов должен быть установлен в this.props.onChange (включен в restProps). Который в свою очередь должен быть установлен getInputProps() from downshift: Object.keys возвращаемого значения:

["aria-autocomplete", "aria-activedescendant", "aria-controls", "aria-labelledby", "autoComplete", "value", "id", "onChange", "onKeyDown", "onBlur"]

И заглядывая в будущее: учитывая onChange обратный вызов переходит на пониженную передачу - будет ли необходимо больше привязки?

0 ответов

Другие вопросы по тегам