From ebb3dcdf617c7455b9fd0a84f37ddc384cc83af8 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期日, 03 十一月 2019 20:58:22 +0800 Subject: [PATCH] second-level-menu --- src/components/header/menuform/index.jsx | 23 +++++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) diff --git a/src/components/header/menuform/index.jsx b/src/components/header/menuform/index.jsx index 43ea283..ef42c63 100644 --- a/src/components/header/menuform/index.jsx +++ b/src/components/header/menuform/index.jsx @@ -1,5 +1,6 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' +import { is, fromJS } from 'immutable' import { Form, Row, Col, Input, Select } from 'antd' import Utils from '@/utils/utils.js' import './index.scss' @@ -76,6 +77,28 @@ }) } } + + UNSAFE_componentWillReceiveProps (nextProps) { + if (nextProps.menu && !is(fromJS(this.props.menu), fromJS(nextProps.menu))) { + this.setState({ + formlist: this.state.defaultMenu.map(menu => { + if (menu.key === 'menuName') { + menu.initVal = nextProps.menu.MenuName + } else if (menu.key === 'openType') { + menu.initVal = nextProps.menu.PageParam.OpenType + } else if (menu.key === 'linkUrl') { + menu.initVal = nextProps.menu.PageParam.linkUrl + if (nextProps.menu.PageParam.OpenType === 'menu') { + menu.hidden = true + } else if (nextProps.menu.PageParam.OpenType === 'newpage') { + menu.hidden = false + } + } + return menu + }) + }) + } + } openTypeChange = (key, value) => { if (key === 'openType') { -- Gitblit v1.8.0