From c6f8e27d35cd31bb6393a1e7f747b6b2593dbd7a Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 08 六月 2022 13:56:57 +0800 Subject: [PATCH] 2022-06-08 --- src/templates/modalconfig/settingform/index.jsx | 224 +++++++++++++++++++++++++++++-------------------------- 1 files changed, 119 insertions(+), 105 deletions(-) diff --git a/src/templates/modalconfig/settingform/index.jsx b/src/templates/modalconfig/settingform/index.jsx index f9abc14..87fe386 100644 --- a/src/templates/modalconfig/settingform/index.jsx +++ b/src/templates/modalconfig/settingform/index.jsx @@ -3,9 +3,9 @@ import { Form, Row, Col, Input, Radio, InputNumber, Select, Tooltip } from 'antd' import { QuestionCircleOutlined } from '@ant-design/icons' -import { formRule } from '@/utils/option.js' +// import { formRule } from '@/utils/option.js' import StyleInput from '@/menu/stylecontroller/styleInput' -// import './index.scss' +import './index.scss' class SettingForm extends Component { static propTpyes = { @@ -16,29 +16,39 @@ state = { fields: null, - display: this.props.config.setting.display, - appType: sessionStorage.getItem('appType') + display: this.props.config.setting.display || 'modal', + appType: sessionStorage.getItem('appType'), + dialogInput: false } UNSAFE_componentWillMount () { const { config } = this.props const { appType, display } = this.state let fields = [] + let dialogInput = null config.fields.forEach(f => { if (f.field && ['select', 'link', 'text', 'number', 'textarea'].includes(f.type) && f.hidden !== 'true' && f.readonly !== 'true') { fields.push(f) } + if (f.field && f.hidden !== 'true' && f.readonly !== 'true') { + if (dialogInput === null) { + dialogInput = ['text', 'number'].includes(f.type) + } else { + dialogInput = false + } + } }) - let _display = display - if (appType === 'mob' && display !== 'prompt' && display !== 'drawer') { + let _display = display + if (appType === 'mob' && display === 'modal') { _display = 'drawer' } this.setState({ fields: fields, - display: _display + display: _display, + dialogInput }) } @@ -81,9 +91,9 @@ } return ( - <Form {...formItemLayout}> + <Form {...formItemLayout} className="form-setting-wrap"> <Row gutter={24}> - <Col span={12}> + {/* <Col span={12}> <Form.Item label="鏍囬"> {getFieldDecorator('title', { initialValue: config.setting.title, @@ -95,15 +105,28 @@ ] })(<Input placeholder="" autoComplete="off" onPressEnter={this.handleSubmit} />)} </Form.Item> - </Col> - {/* {appType !== 'mob' ? <Col span={12}> - <Form.Item label="瀹藉害锛�%锛�"> - {getFieldDecorator('width', { - initialValue: config.setting.width - })(<InputNumber min={10} max={2000} precision={0} onPressEnter={this.handleSubmit}/>)} + </Col> */} + <Col span={24}> + <Form.Item label={ + <Tooltip placement="topLeft" title="瀵硅瘽妗嗗湪浠呮湁涓�涓彲杈撳叆琛ㄥ崟锛堥潪闅愯棌銆侀潪鍙鐨勬枃鏈垨鏁板瓧锛夋椂鏈夋晥銆�"> + <QuestionCircleOutlined className="mk-form-tip" /> + 鏄剧ず鏂瑰紡 + </Tooltip> + }> + {getFieldDecorator('display', { + initialValue: display || 'modal' + })( + <Radio.Group style={{whiteSpace: 'nowrap'}} onChange={(e) => this.setState({display: e.target.value})}> + {appType !== 'mob' ? <Radio value="modal">妯℃�佹</Radio> : null} + <Radio value="drawer">鎶藉眽</Radio> + <Radio value="prompt">鏄惁妗�</Radio> + <Radio value="exec">鐩存帴鎵ц</Radio> + {/* <Radio value="dialog" disabled={dialogInput !== true}>瀵硅瘽妗�</Radio> */} + </Radio.Group> + )} </Form.Item> - </Col> : null} */} - <Col span={12}> + </Col> + {display === 'drawer' || display === 'modal' ? <Col span={12}> <Form.Item label={ <Tooltip placement="topLeft" title="瀹藉害灏忎簬100鏃朵负鐧惧垎鐜囷紝澶т簬100鏃朵负缁濆鍊笺��"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -111,11 +134,11 @@ </Tooltip> }> {getFieldDecorator('width', { - initialValue: config.setting.width + initialValue: config.setting.width || (appType !== 'mob' ? 60 : 100) })(<InputNumber min={10} max={2000} precision={0} onPressEnter={this.handleSubmit}/>)} </Form.Item> - </Col> - <Col span={12}> + </Col> : null} + {display === 'drawer' || display === 'modal' ? <Col span={12}> <Form.Item label="鍒濆鐒︾偣"> {getFieldDecorator('focus', { initialValue: config.setting.focus || '' @@ -133,8 +156,8 @@ </Select> )} </Form.Item> - </Col> - <Col span={12}> + </Col> : null} + {display === 'drawer' || display === 'modal' ? <Col span={12}> <Form.Item label={ <Tooltip placement="topLeft" title="鎵ц澶辫触鏃堕渶瑕佽仛鐒︾殑琛ㄥ崟銆�"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -157,20 +180,54 @@ </Select> )} </Form.Item> - </Col> - {appType !== 'mob' ? <Col span={12}> - <Form.Item label="琛ㄥ崟鎺掑垪"> - {getFieldDecorator('align', { - initialValue: config.setting.align || 'left_right' + </Col> : null} + {appType === 'mob' && display === 'drawer' ? <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="琛ㄥ崟鍏冪礌涓庡乏渚ц竟鐣岀殑璺濈銆�"> + <QuestionCircleOutlined className="mk-form-tip" /> + 宸﹁竟璺� + </Tooltip> + }> + {getFieldDecorator('paddingLeft', { + initialValue: config.setting.paddingLeft || '10px' })( - <Radio.Group> - <Radio value="left_right">宸﹀彸</Radio> - <Radio value="up_down">涓婁笅</Radio> - </Radio.Group> + <StyleInput options={['px', '%']} /> )} </Form.Item> </Col> : null} - <Col span={12}> + {appType === 'mob' && display === 'drawer' ? <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="琛ㄥ崟鍏冪礌涓庡彸渚ц竟鐣岀殑璺濈銆�"> + <QuestionCircleOutlined className="mk-form-tip" /> + 鍙宠竟璺� + </Tooltip> + }> + {getFieldDecorator('paddingRight', { + initialValue: config.setting.paddingRight || '10px' + })( + <StyleInput options={['px', '%']} /> + )} + </Form.Item> + </Col> : null} + {appType === 'mob' && display === 'drawer' ? <Col span={12}> + <Form.Item label="鎸夐挳鍚嶇О"> + {getFieldDecorator('btnName', { + initialValue: config.setting.btnName || '纭畾' + })(<Input placeholder="" autoComplete="off" onPressEnter={this.handleSubmit} />)} + </Form.Item> + </Col> : null} + {appType === 'mob' && display === 'drawer' ? <Col span={12}> + <Form.Item label="鎸夐挳浣嶇疆"> + {getFieldDecorator('btnPosition', { + initialValue: config.setting.btnPosition || 'bottom' + })( + <Radio.Group style={{whiteSpace: 'nowrap'}}> + <Radio value="bottom">涓嬩晶</Radio> + <Radio value="top">涓婁晶</Radio> + </Radio.Group>)} + </Form.Item> + </Col> : null} + {display === 'drawer' || display === 'modal' ? <Col span={12}> <Form.Item label="瀹屾垚鍚�"> {getFieldDecorator('finish', { initialValue: config.setting.finish || 'close' @@ -181,20 +238,8 @@ </Radio.Group> )} </Form.Item> - </Col> - <Col span={12}> - <Form.Item label="鐐瑰嚮钂欏眰"> - {getFieldDecorator('clickouter', { - initialValue: config.setting.clickouter || 'unclose' - })( - <Radio.Group> - <Radio value="unclose">涓嶅叧闂�</Radio> - <Radio value="close">鍏抽棴</Radio> - </Radio.Group> - )} - </Form.Item> - </Col> - <Col span={12}> + </Col> : null} + {display === 'drawer' || display === 'modal' ? <Col span={12}> <Form.Item label={ <Tooltip placement="topLeft" title="闇�瑕侀�氳繃鏁版嵁婧愭煡璇㈢殑閫夐」锛屾槸鍚︿娇鐢ㄧ紦瀛樸��"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -207,37 +252,6 @@ <Radio.Group> <Radio value="true">缂撳瓨</Radio> <Radio value="false">瀹炴椂</Radio> - </Radio.Group> - )} - </Form.Item> - </Col> - <Col span={12}> - <Form.Item label={ - <Tooltip placement="topLeft" title="鎵撳嵃鎸夐挳涓棤鏁堛��"> - <QuestionCircleOutlined className="mk-form-tip" /> - 鏄剧ず鏂瑰紡 - </Tooltip> - }> - {getFieldDecorator('display', { - initialValue: display || 'modal' - })( - <Radio.Group style={{whiteSpace: 'nowrap'}} onChange={(e) => this.setState({display: e.target.value})}> - {appType !== 'mob' ? <Radio value="modal">妯℃�佹</Radio> : null} - <Radio value="drawer">鎶藉眽</Radio> - <Radio value="prompt">鏄惁妗�</Radio> - <Radio value="exec">鐩存帴鎵ц</Radio> - </Radio.Group> - )} - </Form.Item> - </Col> - {!this.props.isSubTab && !appType && display === 'modal' ? <Col span={12}> - <Form.Item label="鎸傝浇瀵硅薄"> - {getFieldDecorator('container', { - initialValue: config.setting.container || 'tab' - })( - <Radio.Group> - <Radio value="view">椤甸潰</Radio> - <Radio value="tab">鏍囩椤�</Radio> </Radio.Group> )} </Form.Item> @@ -256,6 +270,18 @@ )} </Form.Item> </Col> : null} + {appType !== 'mob' && (display === 'drawer' || display === 'modal') ? <Col span={12}> + <Form.Item label="琛ㄥ崟鎺掑垪"> + {getFieldDecorator('align', { + initialValue: config.setting.align || 'left_right' + })( + <Radio.Group> + <Radio value="left_right">宸﹀彸</Radio> + <Radio value="up_down">涓婁笅</Radio> + </Radio.Group> + )} + </Form.Item> + </Col> : null} {display === 'drawer' && appType !== 'mob' ? <Col span={12}> <Form.Item label="琛ㄥ崟绫诲瀷"> {getFieldDecorator('formType', { @@ -268,40 +294,28 @@ )} </Form.Item> </Col> : null} - {appType === 'mob' ? <Col span={12}> - <Form.Item label="宸﹁竟璺�"> - {getFieldDecorator('paddingLeft', { - initialValue: config.setting.paddingLeft || '10px' + {!this.props.isSubTab && !appType && display === 'modal' ? <Col span={12}> + <Form.Item label="鎸傝浇瀵硅薄"> + {getFieldDecorator('container', { + initialValue: config.setting.container || 'tab' })( - <StyleInput options={['px', '%']} /> + <Radio.Group> + <Radio value="view">椤甸潰</Radio> + <Radio value="tab">鏍囩椤�</Radio> + </Radio.Group> )} </Form.Item> </Col> : null} - {appType === 'mob' ? <Col span={12}> - <Form.Item label="鍙宠竟璺�"> - {getFieldDecorator('paddingRight', { - initialValue: config.setting.paddingRight || '10px' + {display === 'drawer' || display === 'modal' ? <Col span={12}> + <Form.Item label="鐐瑰嚮钂欏眰"> + {getFieldDecorator('clickouter', { + initialValue: config.setting.clickouter || 'unclose' })( - <StyleInput options={['px', '%']} /> + <Radio.Group> + <Radio value="unclose">涓嶅叧闂�</Radio> + <Radio value="close">鍏抽棴</Radio> + </Radio.Group> )} - </Form.Item> - </Col> : null} - {appType === 'mob' ? <Col span={12}> - <Form.Item label="鎸夐挳鍚嶇О"> - {getFieldDecorator('btnName', { - initialValue: config.setting.btnName || '纭畾' - })(<Input placeholder="" autoComplete="off" onPressEnter={this.handleSubmit} />)} - </Form.Item> - </Col> : null} - {appType === 'mob' ? <Col span={12}> - <Form.Item label="鎸夐挳浣嶇疆"> - {getFieldDecorator('btnPosition', { - initialValue: config.setting.btnPosition || 'bottom' - })( - <Radio.Group style={{whiteSpace: 'nowrap'}}> - <Radio value="bottom">涓嬩晶</Radio> - <Radio value="top">涓婁晶</Radio> - </Radio.Group>)} </Form.Item> </Col> : null} </Row> -- Gitblit v1.8.0