From f9697383bc9097be8a444558e09ae21b27f1e831 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 31 十二月 2019 09:27:21 +0800 Subject: [PATCH] 2019-12-31 --- src/tabviews/subtable/subTable/index.jsx | 24 ++++++++++++++++++++++-- 1 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/tabviews/subtable/subTable/index.jsx b/src/tabviews/subtable/subTable/index.jsx index d280f0b..093c555 100644 --- a/src/tabviews/subtable/subTable/index.jsx +++ b/src/tabviews/subtable/subTable/index.jsx @@ -1,6 +1,5 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' -// import { is, fromJS } from 'immutable' import { Table, message, Button } from 'antd' import './index.scss' @@ -14,7 +13,8 @@ total: PropTypes.number, // 鎬绘暟 loading: PropTypes.bool, // 琛ㄦ牸鍔犺浇涓� refreshdata: PropTypes.func, // 琛ㄦ牸涓帓搴忓垪銆侀〉鐮佺殑鍙樺寲鏃跺埛鏂� - buttonTrigger: PropTypes.func // 琛ㄦ牸涓寜閽Е鍙戞搷浣� + buttonTrigger: PropTypes.func, // 琛ㄦ牸涓寜閽Е鍙戞搷浣� + handleTableId: PropTypes.func // 鎺у埗琛ㄦ牸鏁版嵁鍒囨崲鏃讹紝鏇存柊鍦ㄤ富琛ㄤ腑鐨刬d } state = { @@ -192,6 +192,12 @@ } onSelectChange = selectedRowKeys => { + let index = '' + if (selectedRowKeys.length > 0) { + index = selectedRowKeys[selectedRowKeys.length - 1] + } + + this.changedata(index) this.setState({ selectedRowKeys }) } @@ -203,12 +209,15 @@ let _re = newkeys.includes(index) if (this.props.setting.tableType === 'radio') { + this.changedata(index) this.setState({ selectedRowKeys: [index] }) } else { if (_re) { newkeys = newkeys.filter(item => item !== index) + this.changedata('') } else { newkeys.push(index) + this.changedata(index) } this.setState({ selectedRowKeys: newkeys }) @@ -231,6 +240,17 @@ }) } + changedata = (index) => { + const { data, setting } = this.props + let _id = '' + + if (data && data.length > 0 && index !== '') { + _id = data[index][setting.primaryKey] || '' + } + + this.props.handleTableId(_id) + } + render() { let { selectedRowKeys } = this.state -- Gitblit v1.8.0