From 8d66ff34fae5b048a6b7923cc75d34f13a08be9d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 02 八月 2022 11:42:43 +0800 Subject: [PATCH] Merge branch 'develop' --- src/views/design/sidemenu/thdmenuform/index.jsx | 57 ++++++++++++++++++++++++++++----------------------------- 1 files changed, 28 insertions(+), 29 deletions(-) diff --git a/src/templates/menuconfig/editthdmenu/menuform/index.jsx b/src/views/design/sidemenu/thdmenuform/index.jsx similarity index 76% copy from src/templates/menuconfig/editthdmenu/menuform/index.jsx copy to src/views/design/sidemenu/thdmenuform/index.jsx index c86cde8..1d68f35 100644 --- a/src/templates/menuconfig/editthdmenu/menuform/index.jsx +++ b/src/views/design/sidemenu/thdmenuform/index.jsx @@ -1,38 +1,43 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' +import { fromJS } from 'immutable' import { Form, Row, Col, Input, Select } from 'antd' -import './index.scss' +// import './index.scss' const { TextArea } = Input class MainSearch extends Component { static propTpyes = { menu: PropTypes.object, // 鑿滃崟淇℃伅 - dict: PropTypes.object, // 瀛楀吀椤� - supMenuList: PropTypes.any, // 琛ㄦ牸鏁版嵁 inputSubmit: PropTypes.func // 鍥炶溅鎻愪氦 } state = { - menu: null + supMenuList: [] } UNSAFE_componentWillMount () { this.setState({ - menu: this.props.menu + supMenuList: fromJS(this.props.menu.supMenuList).toJS() }) } changeMenu = (val) => { - const { menu } = this.state + const { menu } = this.props let submenu = menu.fstMenuList.filter(item => item.MenuID === val)[0] if (submenu) { this.setState({ - menu: {...menu, supMenuList: submenu.children} + supMenuList: submenu.children }, () => { this.props.form.setFieldsValue({ParentID: submenu.children[0] ? submenu.children[0].MenuID : ''}) + }) + } else { + this.setState({ + supMenuList: [] + }, () => { + this.props.form.setFieldsValue({ParentID: ''}) }) } } @@ -50,16 +55,10 @@ }) } - onEnterSubmit = (e) => { - // 琛ㄥ崟鍥炶溅鎻愪氦 - if (e.key !== 'Enter') return - - this.props.inputSubmit && this.props.inputSubmit() - } - render() { + const { menu } = this.props const { getFieldDecorator } = this.props.form - const { menu } = this.state + const { supMenuList } = this.state const formItemLayout = { labelCol: { xs: { span: 24 }, @@ -72,16 +71,16 @@ } return ( - <Form {...formItemLayout} style={{paddingRight: '20px'}} onKeyDown={this.onEnterSubmit}> + <Form {...formItemLayout} style={{paddingRight: '20px'}}> <Row gutter={24}> - <Col span={24}> + <Col span={22}> <Form.Item label={'涓�绾ц彍鍗�'}> {getFieldDecorator('fstMenuId', { initialValue: menu.fstMenuId, rules: [ { required: true, - message: this.props.dict['form.required.select'] + '涓婄骇鑿滃崟!' + message: '璇烽�夋嫨涓婄骇鑿滃崟!' } ] })( @@ -97,14 +96,14 @@ )} </Form.Item> </Col> - <Col span={24}> + <Col span={22}> <Form.Item label={'浜岀骇鑿滃崟'}> {getFieldDecorator('ParentID', { initialValue: menu.ParentId, rules: [ { required: true, - message: this.props.dict['form.required.select'] + '涓婄骇鑿滃崟!' + message: '璇烽�夋嫨涓婄骇鑿滃崟!' } ] })( @@ -112,47 +111,47 @@ showSearch filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} > - {menu.supMenuList.map(option => + {supMenuList.map(option => <Select.Option key={option.MenuID} value={option.MenuID}>{option.text || option.MenuName}</Select.Option> )} </Select> )} </Form.Item> </Col> - <Col span={24}> + <Col span={22}> <Form.Item label={'鑿滃崟鍚嶇О'}> {getFieldDecorator('MenuName', { initialValue: menu.MenuName || '', rules: [ { required: true, - message: this.props.dict['form.required.input'] + '鑿滃崟鍚嶇О!' + message: '璇疯緭鍏ヨ彍鍗曞悕绉�!' } ] - })(<Input placeholder="" autoFocus autoComplete="off" />)} + })(<Input placeholder="" autoFocus autoComplete="off" onPressEnter={() => this.props.inputSubmit()}/>)} </Form.Item> </Col> - <Col span={24}> + <Col span={22}> <Form.Item label={'鑿滃崟鍙傛暟'}> {getFieldDecorator('MenuNo', { initialValue: menu.MenuNo || '', rules: [ { required: true, - message: this.props.dict['form.required.input'] + '鑿滃崟鍙傛暟!' + message: '璇疯緭鍏ヨ彍鍗曞弬鏁�!' } ] - })(<Input placeholder="" autoComplete="off" />)} + })(<Input placeholder="" autoComplete="off" onPressEnter={() => this.props.inputSubmit()}/>)} </Form.Item> </Col> - {menu.Template === 'NewPage' ? <Col span={24}> + {menu.Template === 'NewPage' ? <Col span={22}> <Form.Item label={'閾炬帴鍦板潃'}> {getFieldDecorator('url', { initialValue: menu.url || '', rules: [ { required: true, - message: this.props.dict['form.required.input'] + '椤甸潰鍦板潃!' + message: '璇疯緭鍏ラ〉闈㈠湴鍧�!' }, { max: 1024, -- Gitblit v1.8.0