react-bootstrap-table2-toolkit-spiral
v1.2.3
Published
The toolkit for react-bootstrap-table2
Downloads
509
Maintainers
Readme
react-bootstrap-table2-toolkit
react-bootstrap-table2
support some additional features in react-bootstrap-table2-toolkit
.
In the future, this toolkit will support other feature like row delete, insert etc. Right now we only support Table Search and CSV export.
Install
$ npm install react-bootstrap-table2-toolkit --save
Add CSS
// es5
require('react-bootstrap-table2-toolkit/dist/react-bootstrap-table2-toolkit.min.css');
// es6
import 'react-bootstrap-table2-toolkit/dist/react-bootstrap-table2-toolkit.min.css';
Table Search
import ToolkitProvider, { Search } from 'react-bootstrap-table2-toolkit';
const { SearchBar } = Search;
//...
<ToolkitProvider
keyField="id"
data={ products }
columns={ columns }
search
>
{
props => (
<div>
<h3>Input something at below input field:</h3>
<SearchBar { ...props.searchProps } />
<hr />
<BootstrapTable
{ ...props.baseProps }
/>
</div>
)
}
</ToolkitProvider>
You have to enable the search functionality via
search
prop onToolkitProvider
.ToolkitProvider
is a wrapper of react context, you are supposed to wrap theBootstrapTable
andSearchBar
as the child ofToolkitProvider
You should render
SearchBar
withsearchProps
as well. The position ofSearchBar
is depends on you.
Search Options
defaultSearch - [string]
Accept a string that will be used for default searching when first time table render.
<ToolkitProvider
keyField="id"
data={ products }
columns={ columns }
search={ {
defaultSearch: 'search something here'
} }
>
// ...
</ToolkitProvider>
searchFormatted - [bool]
If you want to search on the formatted data, you are supposed to enable this props. react-bootstrap-table2
will check if you define the column.formatter
when doing search.
<ToolkitProvider
keyField="id"
data={ products }
columns={ columns }
search={ {
searchFormatted: true
} }
>
// ...
</ToolkitProvider>
multiColumnSearch - [bool]
Searches not by full query string but splits it in keywords and searches each individually.
<ToolkitProvider
keyField="id"
data={ products }
columns={ columns }
search={ {
multiColumnSearch: true
} }
>
// ...
</ToolkitProvider>
Clear Search Button
We have a built-in clear search function which allow user clear search status via clicking button:
import ToolkitProvider, { Search } from 'react-bootstrap-table2-toolkit';
const { SearchBar, ClearSearchButton } = Search;
<ToolkitProvider
keyField="id"
data={ products }
columns={ columns }
search
>
{
props => (
<div>
<SearchBar { ...props.searchProps } />
<ClearSearchButton { ...props.searchProps } />
....
</div>
)
}
</ToolkitProvider>
Export CSV
There are two steps to enable the export CSV functionality:
- Give
exportCSV
prop astrue
onToolkitProvider
. - Render
ExportCSVButton
withcsvProps
. The position ofExportCSVButton
is depends on you.
import ToolkitProvider, { CSVExport } from 'react-bootstrap-table2-toolkit';
const { ExportCSVButton } = CSVExport;
<ToolkitProvider
keyField="id"
data={ products }
columns={ columns }
exportCSV
>
{
props => (
<div>
<ExportCSVButton { ...props.csvProps }>Export CSV!!</ExportCSVButton>
<hr />
<BootstrapTable { ...props.baseProps } />
</div>
)
}
</ToolkitProvider>
Export CSV Options
fileName - [String]
Custom the csv file name.
separator - [String]
Custom the csv file separator.
ignoreHeader - [bool]
Default is false
. Give true to avoid to attach the csv header.
noAutoBOM - [bool]
Default is true
.
exportAll - [bool]
Default is true
. false
will only export current data which display on table.
onlyExportSelection - [bool]
Default is false
. true
will only export the data which is selected.