diff --git a/packages/react-bootstrap-table2/src/contexts/selection-context.js b/packages/react-bootstrap-table2/src/contexts/selection-context.js index 31a0e43..65f8d9c 100644 --- a/packages/react-bootstrap-table2/src/contexts/selection-context.js +++ b/packages/react-bootstrap-table2/src/contexts/selection-context.js @@ -3,6 +3,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import Const from '../const'; +import _ from '../utils'; import dataOperator from '../store/operators'; import { getSelectionSummary } from '../store/selection'; @@ -72,7 +73,7 @@ class SelectionProvider extends React.Component { if (!isUnSelect) { currSelected = selected.concat(dataOperator.selectableKeys(data, keyField, nonSelectable)); } 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; diff --git a/packages/react-bootstrap-table2/src/store/selection.js b/packages/react-bootstrap-table2/src/store/selection.js index 38ecd5f..1e562c6 100644 --- a/packages/react-bootstrap-table2/src/store/selection.js +++ b/packages/react-bootstrap-table2/src/store/selection.js @@ -9,7 +9,7 @@ export const getSelectionSummary = ( let allRowsSelected = data.length > 0; 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) { const curr = rowKeys[i]; if (typeof selected.find(x => x === curr) === 'undefined') {