【发布时间】:2018-04-27 07:41:49
【问题描述】:
我正在使用带有材料 ui 自动完成字段的 redux-form。
我需要做的是:
当页面加载自动完成值将为空时。
当用户开始输入并达到 3 个字符时,我想调用 API,该 API 的结果我想显示为自动完成数据源。
我尝试过的:
我尝试不设置 dataSource 并在第二次尝试中设置 dataSource={} 在这两种情况下我都收到相同的错误消息:
失败的道具类型:道具
dataSource在AutoComplete中标记为必填,但其值为undefined。**
Home.js 类代码
import React, {Component} from 'react';
import {Field, reduxForm} from 'redux-form';
import AutoComplete from 'material-ui/AutoComplete';
import {connect} from 'react-redux';
class Home extends Component {
renderAutoComplete = ({
input,
label,
meta: {touched, error},
children,
...custom
}) => (
<AutoComplete
floatingLabelText={label}
errorText={touched && error}
{...input}
onChange={(event, index, value) => input.onChange(value)}
children={children}
{...custom}
/>
)
render() {
const startDate = new Date();
const {handleSubmit} = this.props;
return (
<form onSubmit={handleSubmit(this.onSubmit.bind(this))}>
<div>
<Field name="Origin_1" label="FROM" component={this.renderAutoComplete} dataSource={}/>
</div>
<div>
<button type="submit">
Submit
</button>
</div>
</form>
);
}
}
const LogInForm = reduxForm({
form: 'MaterialUiForm', // a unique identifier for this form
validate
})(Home);
export default connect(mapStateTOProps, {getCity})(LogInForm);
【问题讨论】:
标签: reactjs autocomplete react-redux material-ui