From 268ba59f911bf17d7de39c5152b80787b4b35da4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A6=BE=E5=87=A0=E6=B5=B7?= Date: Mon, 22 Jul 2024 13:00:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=A1=B5=E9=9D=A2=E5=B1=95?= =?UTF-8?q?=E7=A4=BAbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mdTemplate/mdTemplate.js | 20 ++++++++++++------- .../Services/codeTemplate.js | 19 ++++++++++++++---- 2 files changed, 28 insertions(+), 11 deletions(-) diff --git a/exts/yapi-plugin-export-markdown-template/mdTemplate/mdTemplate.js b/exts/yapi-plugin-export-markdown-template/mdTemplate/mdTemplate.js index cdc6361..d974984 100644 --- a/exts/yapi-plugin-export-markdown-template/mdTemplate/mdTemplate.js +++ b/exts/yapi-plugin-export-markdown-template/mdTemplate/mdTemplate.js @@ -59,6 +59,10 @@ export default class ProjectInterfaceSync extends Component { componentDidMount() { this.getSyncData(); } + + UNSAFE_componentWillReceiveProps(nextProps) { + this.getSyncData(nextProps); + } handleSubmit = async () => { const { form, projectId, groupId } = this.props; let params = { @@ -103,14 +107,16 @@ export default class ProjectInterfaceSync extends Component { }); } - async getSyncData() { - let result = await axios.get('/api/plugin/mdConfig/get' + (this.props.projectId ? `?project_id=${this.props.projectId}` : `?groupId=${this.props.groupId}`)); + async getSyncData(newProps) { + const {projectId, groupId} = newProps || this.props; + if (newProps && (projectId === this.props.projectId && groupId === this.props.groupId)){ + return + } + let result = await axios.get('/api/plugin/mdConfig/get' + (this.props.projectId ? `?project_id=${projectId}` : `?groupId=${groupId}`)); if (result.data.errcode === 0) { - if (result.data.data) { - this.setState({ - config_data: result.data.data - }); - } + this.setState({ + config_data: (result.data && result.data.data) || {} + }); } } diff --git a/exts/yapi-plugin-gen-java-services/Services/codeTemplate.js b/exts/yapi-plugin-gen-java-services/Services/codeTemplate.js index 9f06f22..806b469 100644 --- a/exts/yapi-plugin-gen-java-services/Services/codeTemplate.js +++ b/exts/yapi-plugin-gen-java-services/Services/codeTemplate.js @@ -89,10 +89,13 @@ export default class CodeGenTemplate extends Component { form.validateFields(async (err, values) => { if (!err) { let assignValue = Object.assign(params, values); - await axios.post('/api/plugin/template/save', assignValue).then(res => { + await axios.post('/api/plugin/template/save', assignValue).then(async (res) => { if (res.data.errcode === 0) { message.success('保存成功'); - this.getSyncData(); + await this.getSyncData(); + this.setState({ + activeKey: params.tag + }); } else { message.error(res.data.errmsg); } @@ -101,6 +104,7 @@ export default class CodeGenTemplate extends Component { }); }; + componentDidMount() { this.getSyncData(); } @@ -113,8 +117,11 @@ export default class CodeGenTemplate extends Component { }); } - async getSyncData() { - const {projectId, groupId} = this.props; + async getSyncData(newProps) { + const {projectId, groupId} = newProps || this.props; + if (newProps && (projectId === this.props.projectId && groupId === this.props.groupId)){ + return + } let result = await axios.get('/api/plugin/template/get?' + (projectId ? `projectId=${projectId}` : `groupId=${groupId}`)); if (result.data.errcode === 0) { if (result.data.data && result.data.data.length) { @@ -181,6 +188,10 @@ export default class CodeGenTemplate extends Component { } + UNSAFE_componentWillReceiveProps(nextProps) { + this.getSyncData(nextProps); + } + render() { const {getFieldDecorator} = this.props.form;