From 2c82079d04579947548802644cfc03339dc694cc Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Tue, 02 Dec 2025 13:12:55 +0800
Subject: [PATCH] 修复表单构建移除所有控件后切换路由回来空白问题
---
ruoyi-ui/src/utils/generator/drawingDefault.js | 64 ++++++++++++++++++--------------
ruoyi-ui/src/views/tool/build/index.vue | 12 ++++--
2 files changed, 44 insertions(+), 32 deletions(-)
diff --git a/ruoyi-ui/src/utils/generator/drawingDefault.js b/ruoyi-ui/src/utils/generator/drawingDefault.js
index 5f7d1c4..769f0df 100644
--- a/ruoyi-ui/src/utils/generator/drawingDefault.js
+++ b/ruoyi-ui/src/utils/generator/drawingDefault.js
@@ -1,29 +1,37 @@
-export default [
- {
- layout: 'colFormItem',
- tagIcon: 'input',
- label: '手机号',
- vModel: 'mobile',
- formId: 6,
- tag: 'el-input',
- placeholder: '请输入手机号',
- defaultValue: '',
- span: 24,
- style: { width: '100%' },
- clearable: true,
- prepend: '',
- append: '',
- 'prefix-icon': 'el-icon-mobile',
- 'suffix-icon': '',
- maxlength: 11,
- 'show-word-limit': true,
- readonly: false,
- disabled: false,
- required: true,
- changeTag: true,
- regList: [{
- pattern: '/^1(3|4|5|7|8|9)\\d{9}$/',
- message: '手机号格式错误'
- }]
+export const drawingDefaultValue = []
+
+export function initDrawingDefaultValue() {
+ if (drawingDefaultValue.length === 0) {
+ drawingDefaultValue.push({
+ layout: 'colFormItem',
+ tagIcon: 'input',
+ label: '手机号',
+ vModel: 'mobile',
+ formId: 6,
+ tag: 'el-input',
+ placeholder: '请输入手机号',
+ defaultValue: '',
+ span: 24,
+ style: {width: '100%'},
+ clearable: true,
+ prepend: '',
+ append: '',
+ 'prefix-icon': 'el-icon-mobile',
+ 'suffix-icon': '',
+ maxlength: 11,
+ 'show-word-limit': true,
+ readonly: false,
+ disabled: false,
+ required: true,
+ changeTag: true,
+ regList: [{
+ pattern: '/^1(3|4|5|7|8|9)\\d{9}$/',
+ message: '手机号格式错误'
+ }]
+ })
}
-]
+}
+
+export function cleanDrawingDefaultValue() {
+ drawingDefaultValue.splice(0, drawingDefaultValue.length)
+}
diff --git a/ruoyi-ui/src/views/tool/build/index.vue b/ruoyi-ui/src/views/tool/build/index.vue
index 1746224..9e9e940 100644
--- a/ruoyi-ui/src/views/tool/build/index.vue
+++ b/ruoyi-ui/src/views/tool/build/index.vue
@@ -146,7 +146,7 @@
import { makeUpHtml, vueTemplate, vueScript, cssStyle } from '@/utils/generator/html'
import { makeUpJs } from '@/utils/generator/js'
import { makeUpCss } from '@/utils/generator/css'
-import drawingDefault from '@/utils/generator/drawingDefault'
+import { drawingDefaultValue, initDrawingDefaultValue, cleanDrawingDefaultValue } from '@/utils/generator/drawingDefault'
import logo from '@/assets/logo/logo.png'
import CodeTypeDialog from './CodeTypeDialog'
import DraggableItem from './DraggableItem'
@@ -171,16 +171,19 @@
selectComponents,
layoutComponents,
labelWidth: 100,
- drawingList: drawingDefault,
+ drawingList: drawingDefaultValue,
drawingData: {},
- activeId: drawingDefault[0].formId,
+ activeId: drawingDefaultValue[0].formId,
drawerVisible: false,
formData: {},
dialogVisible: false,
generateConf: null,
showFileName: false,
- activeData: drawingDefault[0]
+ activeData: drawingDefaultValue[0]
}
+ },
+ beforeCreate() {
+ initDrawingDefaultValue()
},
created() {
// 防止 firefox 下 拖拽 会新打卡一个选项卡
@@ -284,6 +287,7 @@
this.$confirm('确定要清空所有组件吗?', '提示', { type: 'warning' }).then(
() => {
this.drawingList = []
+ cleanDrawingDefaultValue()
}
)
},
--
Gitblit v1.9.3