【发布时间】:2020-04-03 02:29:23
【问题描述】:
使用handleChange 方法处理带有Hooks 样式的Form Input 的OnChange 事件,该样式设置对象的状态。
handleChange 函数依次调用 setLocation 以使用新值更新位置状态。
为了使用户数据输入更容易,我决定将城市字段更改为自动完成,但我未能捕捉到自动完成的值。 在文档中他告诉我,我需要传递两个参数,但我不能很好理解
function(event: object, value: any) => void
event: The event source of the callback
value: null
如何访问字段的值并将其放入我的函数中以插入数据?
<Autocomplete
style={{ width: 300 }}
value={location.City}
onChange={handleChange}
options={list.City}
classes={{
option: classes.option,
}}
autoHighlight
getOptionLabel={option => typeof option === 'string' ? option : option.City}
renderOption={option => (
<React.Fragment>
{option.City} -{option.State}
</React.Fragment>
)}
renderInput={params => (
<TextField {...params} label="City" value={location.City} margin="normal" variant="outlined" style={{ width: 220 }} inputProps={{
...params.inputProps,
autoComplete: 'disabled', // disable autocomplete and autofill
}}/>
)}
/>
【问题讨论】:
-
好吧,我有好消息和坏消息要告诉你,好消息是我遇到了同样的问题并且不知道发生了什么,坏消息是我也没有解决它。如果你和我有同样的问题:你的自动完成与 axios/async 混淆。如果它与我的问题相同,则每次按下键时都必须以某种方式清除 axios 抱歉,我无法给出正确的答案,但也许会有所帮助!明天我会在这里检查你,也许有人可以帮助你并帮助我解决我的问题;)
标签: reactjs autocomplete material-ui react-hooks