如何在自动完成的getOptionLabel中从response - to set中获取特定字段 &



响应'ItemData'将有n个字段,我想检索特定字段,例如' itemno '并将其设置为'ItemData'。而不是整个响应。这样我就可以在autocomplete的getOptionLabel中使用它。因为我想设置'option =>选项'而不是' Option =>选择。

onChangeInputItemNo = value => {

getItem(value).then(
(response) => {
if (response.ok) {
response.json()
.then((responseData) => {
console.log(responseData);
console.log("hi");

this.setState({
isLoading: false,
ItemData: responseData
})
});
}
})
}

我将从子组件传递初始值到自动完成框,我也希望自动完成正常工作,如果值需要改变。所以我喜欢保持getOptionLabel为'选项'而不是'option. specficfieldname '。

<Autocomplete
value={this.state.fromChild}                              
options={this.state.ItemData}                                   
getOptionLabel={option => option}   
onChange={this.onChangeItemNo}                               
renderInput={params => (
<TextField {...params} onChange={e => this.onChangeInputItemNo(e.target.value)} fullWidth />
)}
/>

如果你关心的是ItemNo在你的responseData…

onChangeInputItemNo = value => {
getItem(value).then((response) => {
if (response.ok) {
response.json().then(
(responseData) => {
this.setState({
isLoading: false,
ItemData: responseData?.ItemNo})
});
}
})
}

相关内容

最新更新