Javascript 清晰蚂蚁设计自动完成
我的页面标题中有一个Ant Design Autocomplete组件(用于搜索)。每次有路线更改时,我都要清除文本。这是自动完成的代码:Javascript 清晰蚂蚁设计自动完成,javascript,reactjs,antd,Javascript,Reactjs,Antd,我的页面标题中有一个Ant Design Autocomplete组件(用于搜索)。每次有路线更改时,我都要清除文本。这是自动完成的代码: <AutoComplete dataSource={options} onSelect={this.onSelectOption} onSearch={this.search} labelInValue optionLabelProp="option" defaultActiveFirstOption={false} >
<AutoComplete
dataSource={options}
onSelect={this.onSelectOption}
onSearch={this.search}
labelInValue
optionLabelProp="option"
defaultActiveFirstOption={false}
>
<Input
ref={input => {
this.searchBar = input;
}}
onPressEnter={e => this.goTo(e)}
/>
</AutoComplete>
{
this.searchBar=输入;
}}
onPressEnter={e=>this.goTo(e)}
/>
我尝试过使用autocomplete的值
属性并将其设置为state,但什么也没发生。还尝试在子输入
框中设置值
,但同样没有任何结果。还尝试了执行this.searchBar.value=“test”代码>但什么都没有
注:
-我正在使用ref
和Input
子组件,因为我需要能够动态设置焦点,并在按Enter键时调用
,我找到了答案。我假设Autocomplete值是一个简单的字符串,但它实际上是一个具有以下结构的对象:
{ key: '', label:'' }
以前,当我尝试使用值
属性时,我设置了一个带有未定义
或空白字符串的变量。因此,现在改为:
<AutoComplete
dataSource={options}
onSelect={this.onSelectOption}
onSearch={this.search}
labelInValue
onFocus={() => this.setState({ focus: true })}
onBlur={() => {
this.setState({
focus: false,
searchInput: { key: undefined, label: undefined }
});
}}
value={this.state.searchInput}
onChange={e => this.setState({ searchInput: e })}
>
<Input
ref={input => {
this.searchBar = input;
}}
onPressEnter={e => this.goTo(e)}
/>
</AutoComplete>
this.setState({focus:true})
onBlur={()=>{
这是我的国家({
焦点:错误,
searchInput:{键:未定义,标签:未定义}
});
}}
值={this.state.searchInput}
onChange={e=>this.setState({searchInput:e})}
>
{
this.searchBar=输入;
}}
onPressEnter={e=>this.goTo(e)}
/>
可复制的示例?