Я использую response-bootstrap-typeahead, чтобы пользователи могли осуществлять поиск в списке людей на основе их имен или адресов электронной почты.Я следую примеру пользовательской фильтрации здесь с опцией полей данных, и все работает нормально, за исключением того, что я получаю несколько предупреждений в консоли с каждой вводимой буквой:
Warning: [react-bootstrap-typeahead] Fields passed to `filterBy` should have string values. Value will be converted to a string; results may be unexpected.
Ниже приведены параметры, которые я передаю компоненту:
const options = [
{displayName: "John Doe", fullName: "John Henry Doe", email: "john_doe@gmail.com"},
{displayName: "Jane Smith", fullName: "Jane Susan Smith", email: "jane_smith@gmail.com"}
]
А вот мой код для самой typeahead:
render() {
const {
isLoading,
} = this.state;
const filterByFields = ['email', 'displayName'];
return (
<TypeAheadSearchWrapper>
<Typeahead
filterBy={filterByFields}
labelKey="displayName"
options={options}
placeholder={this.props.placeholder}
onChange={this.handleChange}
minLength={3}
onInputChange={this.handleTextInput}
isLoading={isLoading}
renderMenuItemChildren={option => (
<div>
{option.displayName}
<div className="sub-text">{option.email}</div>
</div>
)}
/>
</TypeAheadSearchWrapper>
);
}
}
Я точно следую примеруи элементы в 'filterByFields' фактически являются строками.Есть идеи, как избавиться от этого предупреждения?