mirror of
https://github.com/gosticks/react-bootstrap-table2.git
synced 2026-06-29 13:40:07 +00:00
Compare commits
7 Commits
react-boot
...
react-boot
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
be916d81a3 | ||
|
|
49d1ce8812 | ||
|
|
18caf0ac8d | ||
|
|
1b9bd63370 | ||
|
|
b2121fdf24 | ||
|
|
4aaf140de5 | ||
|
|
569aa0195e |
@@ -208,6 +208,8 @@ const defaultSorted = [{
|
|||||||
}];
|
}];
|
||||||
```
|
```
|
||||||
|
|
||||||
|
**Note**: Only the first column is sorted currently, see #1083.
|
||||||
|
|
||||||
### <a name='defaultSortDirection'>defaultSortDirection - [String]</a>
|
### <a name='defaultSortDirection'>defaultSortDirection - [String]</a>
|
||||||
Default sort direction when user click on header column at first time, available value is `asc` and `desc`. Default is `desc`.
|
Default sort direction when user click on header column at first time, available value is `asc` and `desc`. Default is `desc`.
|
||||||
|
|
||||||
|
|||||||
@@ -36,11 +36,12 @@ const columns = [{
|
|||||||
|
|
||||||
const MyExportCSV = (props) => {
|
const MyExportCSV = (props) => {
|
||||||
const handleClick = () => {
|
const handleClick = () => {
|
||||||
props.onExport();
|
// passing my custom data
|
||||||
|
props.onExport(products.filter(r => r.id > 2));
|
||||||
};
|
};
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<button className="btn btn-success" onClick={ handleClick }>Export to CSV</button>
|
<button className="btn btn-success" onClick={ handleClick }>Only export Product ID bigger than 2</button>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "react-bootstrap-table2-example",
|
"name": "react-bootstrap-table2-example",
|
||||||
"version": "1.0.31",
|
"version": "1.0.32",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"private": true,
|
"private": true,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "react-bootstrap-table-next",
|
"name": "react-bootstrap-table-next",
|
||||||
"version": "3.2.0",
|
"version": "3.2.1",
|
||||||
"description": "Next generation of react-bootstrap-table",
|
"description": "Next generation of react-bootstrap-table",
|
||||||
"main": "./lib/index.js",
|
"main": "./lib/index.js",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import Const from '../const';
|
import Const from '../const';
|
||||||
|
import _ from '../utils';
|
||||||
|
|
||||||
import dataOperator from '../store/operators';
|
import dataOperator from '../store/operators';
|
||||||
import { getSelectionSummary } from '../store/selection';
|
import { getSelectionSummary } from '../store/selection';
|
||||||
@@ -72,7 +73,7 @@ class SelectionProvider extends React.Component {
|
|||||||
if (!isUnSelect) {
|
if (!isUnSelect) {
|
||||||
currSelected = selected.concat(dataOperator.selectableKeys(data, keyField, nonSelectable));
|
currSelected = selected.concat(dataOperator.selectableKeys(data, keyField, nonSelectable));
|
||||||
} else {
|
} else {
|
||||||
currSelected = selected.filter(s => typeof data.find(d => d[keyField] === s) === 'undefined');
|
currSelected = selected.filter(s => typeof data.find(d => _.get(d, keyField) === s) === 'undefined');
|
||||||
}
|
}
|
||||||
|
|
||||||
let result;
|
let result;
|
||||||
|
|||||||
@@ -43,10 +43,14 @@ class HeaderCell extends eventDelegater(React.Component) {
|
|||||||
|
|
||||||
const delegateEvents = this.delegate(headerEvents);
|
const delegateEvents = this.delegate(headerEvents);
|
||||||
|
|
||||||
|
const customAttrs = _.isFunction(headerAttrs)
|
||||||
|
? headerAttrs(column, index)
|
||||||
|
: (headerAttrs || {});
|
||||||
|
|
||||||
const cellAttrs = {
|
const cellAttrs = {
|
||||||
..._.isFunction(headerAttrs) ? headerAttrs(column, index) : headerAttrs,
|
...customAttrs,
|
||||||
...delegateEvents,
|
...delegateEvents,
|
||||||
tabIndex: 0
|
tabIndex: _.isDefined(customAttrs.tabIndex) ? customAttrs.tabIndex : 0
|
||||||
};
|
};
|
||||||
|
|
||||||
let sortSymbol;
|
let sortSymbol;
|
||||||
|
|||||||
@@ -2,14 +2,14 @@ import _ from '../utils';
|
|||||||
import { getRowByRowId } from './rows';
|
import { getRowByRowId } from './rows';
|
||||||
|
|
||||||
export const getSelectionSummary = (
|
export const getSelectionSummary = (
|
||||||
data,
|
data = [],
|
||||||
keyField,
|
keyField,
|
||||||
selected = []
|
selected = []
|
||||||
) => {
|
) => {
|
||||||
let allRowsSelected = data.length > 0;
|
let allRowsSelected = data.length > 0;
|
||||||
let allRowsNotSelected = true;
|
let allRowsNotSelected = true;
|
||||||
|
|
||||||
const rowKeys = data.map(d => d[keyField]);
|
const rowKeys = data.map(d => _.get(d, keyField));
|
||||||
for (let i = 0; i < rowKeys.length; i += 1) {
|
for (let i = 0; i < rowKeys.length; i += 1) {
|
||||||
const curr = rowKeys[i];
|
const curr = rowKeys[i];
|
||||||
if (typeof selected.find(x => x === curr) === 'undefined') {
|
if (typeof selected.find(x => x === curr) === 'undefined') {
|
||||||
@@ -24,7 +24,7 @@ export const getSelectionSummary = (
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
export const selectableKeys = (data, keyField, skips = []) => {
|
export const selectableKeys = (data = [], keyField, skips = []) => {
|
||||||
if (skips.length === 0) {
|
if (skips.length === 0) {
|
||||||
return data.map(row => _.get(row, keyField));
|
return data.map(row => _.get(row, keyField));
|
||||||
}
|
}
|
||||||
@@ -40,6 +40,6 @@ export const unSelectableKeys = (selected, skips = []) => {
|
|||||||
return selected.filter(x => _.contains(skips, x));
|
return selected.filter(x => _.contains(skips, x));
|
||||||
};
|
};
|
||||||
|
|
||||||
export const getSelectedRows = (data, keyField, selected) =>
|
export const getSelectedRows = (data = [], keyField, selected) =>
|
||||||
selected.map(k => getRowByRowId(data, keyField, k)).filter(x => !!x);
|
selected.map(k => getRowByRowId(data, keyField, k)).filter(x => !!x);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user