RuoYi
2025-12-02 2c82079d04579947548802644cfc03339dc694cc
修复表单构建移除所有控件后切换路由回来空白问题
2 files modified
76 ■■■■■ changed files
ruoyi-ui/src/utils/generator/drawingDefault.js 64 ●●●●● patch | view | raw | blame | history
ruoyi-ui/src/views/tool/build/index.vue 12 ●●●●● patch | view | raw | blame | history
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)
}
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()
        }
      )
    },