Fix multiselectable and unselect rows isues on Table component
parent
88bc765121
commit
5ccd6dae01
|
@ -2,3 +2,4 @@ build
|
|||
node_modules
|
||||
npm-debug.log
|
||||
.idea
|
||||
.DS_Store
|
|
@ -44,10 +44,14 @@ const factory = (TableHead, TableRow) => {
|
|||
if (this.props.onSelect) {
|
||||
const position = this.props.selected.indexOf(index);
|
||||
let newSelected = [...this.props.selected];
|
||||
if (position !== -1) { newSelected.splice(position, 1); }
|
||||
if (position !== -1 && this.props.multiSelectable) {
|
||||
|
||||
if (position !== -1) {
|
||||
newSelected = newSelected.filter((el,idx)=>{ return (idx != position); });
|
||||
}
|
||||
else if (this.props.multiSelectable) {
|
||||
newSelected.push(index);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
newSelected = [index];
|
||||
}
|
||||
this.props.onSelect(newSelected);
|
||||
|
|
14
lib/index.js
14
lib/index.js
|
@ -8,7 +8,7 @@ exports.TimePicker = exports.Tooltip = exports.Table = exports.Switch = exports.
|
|||
var _button = require('./button');
|
||||
|
||||
Object.keys(_button).forEach(function (key) {
|
||||
if (key === "default") return;
|
||||
if (key === "default" || key === "__esModule") return;
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
|
@ -20,7 +20,7 @@ Object.keys(_button).forEach(function (key) {
|
|||
var _card = require('./card');
|
||||
|
||||
Object.keys(_card).forEach(function (key) {
|
||||
if (key === "default") return;
|
||||
if (key === "default" || key === "__esModule") return;
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
|
@ -32,7 +32,7 @@ Object.keys(_card).forEach(function (key) {
|
|||
var _layout = require('./layout');
|
||||
|
||||
Object.keys(_layout).forEach(function (key) {
|
||||
if (key === "default") return;
|
||||
if (key === "default" || key === "__esModule") return;
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
|
@ -44,7 +44,7 @@ Object.keys(_layout).forEach(function (key) {
|
|||
var _list = require('./list');
|
||||
|
||||
Object.keys(_list).forEach(function (key) {
|
||||
if (key === "default") return;
|
||||
if (key === "default" || key === "__esModule") return;
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
|
@ -56,7 +56,7 @@ Object.keys(_list).forEach(function (key) {
|
|||
var _menu = require('./menu');
|
||||
|
||||
Object.keys(_menu).forEach(function (key) {
|
||||
if (key === "default") return;
|
||||
if (key === "default" || key === "__esModule") return;
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
|
@ -68,7 +68,7 @@ Object.keys(_menu).forEach(function (key) {
|
|||
var _radio = require('./radio');
|
||||
|
||||
Object.keys(_radio).forEach(function (key) {
|
||||
if (key === "default") return;
|
||||
if (key === "default" || key === "__esModule") return;
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
|
@ -80,7 +80,7 @@ Object.keys(_radio).forEach(function (key) {
|
|||
var _tabs = require('./tabs');
|
||||
|
||||
Object.keys(_tabs).forEach(function (key) {
|
||||
if (key === "default") return;
|
||||
if (key === "default" || key === "__esModule") return;
|
||||
Object.defineProperty(exports, key, {
|
||||
enumerable: true,
|
||||
get: function get() {
|
||||
|
|
|
@ -69,17 +69,22 @@ var factory = function factory(TableHead, TableRow) {
|
|||
}
|
||||
}, _this.handleRowSelect = function (index) {
|
||||
if (_this.props.onSelect) {
|
||||
var position = _this.props.selected.indexOf(index);
|
||||
var newSelected = [].concat(_toConsumableArray(_this.props.selected));
|
||||
if (position !== -1) {
|
||||
newSelected.splice(position, 1);
|
||||
}
|
||||
if (position !== -1 && _this.props.multiSelectable) {
|
||||
newSelected.push(index);
|
||||
} else {
|
||||
newSelected = [index];
|
||||
}
|
||||
_this.props.onSelect(newSelected);
|
||||
(function () {
|
||||
var position = _this.props.selected.indexOf(index);
|
||||
var newSelected = [].concat(_toConsumableArray(_this.props.selected));
|
||||
if (position !== -1) {
|
||||
newSelected = newSelected.filter(function (el, idx) {
|
||||
return idx != position;
|
||||
});
|
||||
} else {
|
||||
if (_this.props.multiSelectable) {
|
||||
newSelected.push(index);
|
||||
} else {
|
||||
newSelected = [index];
|
||||
}
|
||||
}
|
||||
_this.props.onSelect(newSelected);
|
||||
})();
|
||||
}
|
||||
}, _this.handleRowChange = function (index, key, value) {
|
||||
if (_this.props.onChange) {
|
||||
|
|
Loading…
Reference in New Issue