From 294a5ca15f02aa2e216b8c0e2829a17d9a2ab5d0 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期日, 18 七月 2021 01:31:28 +0800 Subject: [PATCH] 2021-07-18 --- src/views/interface/workspace/editTable/index.jsx | 42 ++++++++++++++++++------------------------ 1 files changed, 18 insertions(+), 24 deletions(-) diff --git a/src/views/interface/workspace/editTable/index.jsx b/src/views/interface/workspace/editTable/index.jsx index d4001e3..dc5ff0f 100644 --- a/src/views/interface/workspace/editTable/index.jsx +++ b/src/views/interface/workspace/editTable/index.jsx @@ -173,34 +173,29 @@ }) } - handleAdd = (e) => { - e.stopPropagation() - const { dataSource, selectedRowKeys } = this.state - const item = { - uuid: Utils.getuuid(), - key: '', - value: '', - description: '', - selected: true - } - - let _data = [...dataSource, item] - - this.setState({ - dataSource: _data, - selectedRowKeys: [...selectedRowKeys, item.uuid] - }, () => { - this.props.onChange(_data) - }) - } - handleSave = row => { - const newData = this.state.dataSource.map(item => { + let newData = this.state.dataSource.map(item => { if (row.uuid === item.uuid) return row return item }) - this.setState({ dataSource: newData }, () => { + let selectedRowKeys = this.state.selectedRowKeys + + let last = newData[newData.length - 1] + if (last.key || last.value || last.description) { + const item = { + uuid: Utils.getuuid(), + key: '', + value: '', + description: '', + selected: true + } + + newData = [...newData, item] + selectedRowKeys = [...selectedRowKeys, item.uuid] + } + + this.setState({ dataSource: newData, selectedRowKeys }, () => { this.props.onChange(newData) }) } @@ -237,7 +232,6 @@ }) return ( <div className="params-edit-table"> - <Icon className="add-row" type="plus" onClick={this.handleAdd} /> <Table rowKey="uuid" components={components} -- Gitblit v1.8.0