From 432b788acf901b0720184b8ee8bc81a2e6fa47e0 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 28 九月 2021 18:22:02 +0800 Subject: [PATCH] 2021-09-28 --- src/menu/components/table/normal-table/columns/index.jsx | 37 +++++++++++++++++++++++++++---------- 1 files changed, 27 insertions(+), 10 deletions(-) diff --git a/src/menu/components/table/normal-table/columns/index.jsx b/src/menu/components/table/normal-table/columns/index.jsx index cf22a7d..c347313 100644 --- a/src/menu/components/table/normal-table/columns/index.jsx +++ b/src/menu/components/table/normal-table/columns/index.jsx @@ -53,7 +53,7 @@ if (index !== undefined) { return connectDragSource( - connectDropTarget(<th {...restProps} index={index} style={{ cursor: 'move', textAlign: align }}> + connectDropTarget(<th {...restProps} index={index} style={{ cursor: 'move', textAlign: align }} onDoubleClick={() => column && this.props.editColumn(column)}> <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={ <div className="mk-popover-control"> {column && ['custom', 'colspan', 'action'].includes(column.type) ? @@ -71,7 +71,7 @@ ) } else if (column) { return ( - <th {...restProps} key={column.uuid}> + <th {...restProps} key={column.uuid} onDoubleClick={() => this.props.editColumn(column)}> <Popover overlayClassName="mk-popover-control-wrap" mouseLeaveDelay={0.2} mouseEnterDelay={0.2} content={ <div className="mk-popover-control"> {column && ['custom', 'colspan'].includes(column.type) ? @@ -123,9 +123,9 @@ ) class EditableColumnCell extends Component { - updateCard = (vals, action) => { + updateCard = (vals, btn) => { const { column } = this.props - this.props.upComponent({...column, elements: vals}, action) + this.props.upComponent({...column, elements: vals}, btn) } shouldComponentUpdate (nextProps, nextState) { @@ -158,6 +158,7 @@ return ( <td style={{...style, minWidth: column.Width || 100}} className={className}> {column.field || (column.type === 'index' ? '$Index' : '')} + {column.Hide === 'true' ? <Icon style={{marginLeft: '5px', color: 'orange', fontSize: '12px'}} type="close-circle" /> : null} {column.marks && column.marks.length ? <Icon className="profile" type="ant-design"/> : null} </td> ) @@ -268,18 +269,19 @@ }) } - updateCol = (col, action) => { + updateCol = (col, btn) => { let _columns = fromJS(this.state.columns).toJS() _columns = this.loopCol(_columns, col) this.setState({ columns: _columns, }, () => { - if (action) { - this.props.updatecolumn({...this.props.config, cols: _columns, action}) - } else { - this.props.updatecolumn({...this.props.config, cols: _columns}) + let config = {...this.props.config, cols: _columns} + if (btn) { + config.action = config.action.filter(item => item.uuid !== btn.uuid) } + + this.props.updatecolumn(config) }) } @@ -303,7 +305,7 @@ }) this.updateCol(column) } else if (column.type === 'custom') { - let newcard = {uuid: Utils.getuuid(), focus: true, eleType: 'text', datatype: 'dynamic'} + let newcard = {uuid: Utils.getuuid(), focus: true, eleType: 'text', datatype: 'dynamic', style: {paddingLeft: '4px'}} // 娉ㄥ唽浜嬩欢-娣诲姞鍏冪礌 MKEmitter.emit('cardAddElement', [config.uuid, column.uuid], newcard) @@ -511,6 +513,20 @@ }) } + clear = () => { + const _this = this + + confirm({ + content: '纭畾娓呯┖鏄剧ず鍒楀悧锛�', + onOk() { + _this.setState({columns: []}, () => { + _this.props.updatecolumn({..._this.props.config, cols: []}) + }) + }, + onCancel() {} + }) + } + componentDidMount () { MKEmitter.addListener('submitStyle', this.getStyle) } @@ -553,6 +569,7 @@ <Icon title="澶嶅埗鏄剧ず鍒�" type="copy" onClick={this.copycolumn} /> <MarkColumn columns={fields} type="line" marks={lineMarks} onSubmit={this.updateLineMarks} /> <Icon title="鍚屾瀛楁闆�" type="file-sync" onClick={this.syncfield} /> + <Icon title="娓呯┖鏄剧ず鍒�" type="delete" onClick={this.clear}/> </div> <DndProvider> <Table -- Gitblit v1.8.0