Я пытаюсь настроить поле «Текст ввода» для опции, подобной реагирующему фильтру bootstrap -table2, доступной в https://react-bootstrap-table.github.io/react-bootstrap-table2/storybook/index.html?selectedKind=Column%20Filter&selectedStory=Programmatically%20Text%20Filter&full=0&addons=1&stories=1&panelRight=0&addonPanel=storybook%2Factions%2Factions-panel
Я пытаюсь использовать приведенный ниже фрагмент кода
let dataFilter;
const handleTextChange = (searchDataText) => {
console.log(searchDataText.target.value);
dataFilter(searchDataText.target.value);
};
// This is static and used to define Table Header properties
const columns = [{
dataField: 'data'
, text: ""
, headerFormatter: (column, colIndex) => (<i className="fa fa-podcast"> Name</i>)
, sort: true
, filter: textFilter({
getFilter: (filter) => {
// dataFilter was assigned once the component has been mounted.
dataFilter = filter;
}
})
, headerStyle: {backgroundColor: '#6495ed'}
, headerAlign: 'center'
, align: 'center'
}]
...
...
<Form.Control type="text" placeholder="Search POD" name="search_data_filter"
onChange={handleTextChange}/>
<BootstrapTable keyField='dataKey' data={this.state.tableRows}
columns={columns} bootstrap4={true}
defaultSorted={defaultSorted} striped
hover filter={filterFactory()}
pagination={paginationFactory()}
filter={filterFactory()}
/>
это почти точно приведенная инструкция в приведенной выше ссылке. Но когда я выполняю код, при выводе на консоль я вижу, что набранный текст правильно перехватывается, и когда он пытается перейти к фильтру, возникает ошибка ...
dataFilter не является функцией
Любая подсказка, альтернативный подход для реализации пользовательского ввода текста в виде поля фильтра вне области таблицы?