Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
phsl
/
admin
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
2ff9904f
authored
Oct 10, 2024
by
preschooler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
🐞
fix:初始化 form-create 配置,修复“字段 ID”不可修改问题。
parent
fe21db37
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
90 additions
and
15 deletions
+90
-15
src/views/bpm/form/editor/index.vue
+43
-4
src/views/infra/build/index.vue
+47
-11
No files found.
src/views/bpm/form/editor/index.vue
View file @
2ff9904f
<
template
>
<
template
>
<ContentWrap>
<ContentWrap
:body-style=
"
{ padding: '0px' }" class="!mb-0"
>
<!-- 表单设计器 -->
<!-- 表单设计器 -->
<FcDesigner
ref=
"designer"
height=
"780px"
>
<div
class=
"h-[calc(100vh-var(--top-tool-height)-var(--tags-view-height)-var(--app-content-padding)-var(--app-content-padding)-2px)]"
>
<fc-designer
class=
"my-designer"
ref=
"designer"
:config=
"designerConfig"
>
<template
#
handle
>
<template
#
handle
>
<el-button
round
size=
"small"
type=
"primary"
@
click=
"handleSave"
>
<el-button
size=
"small"
type=
"success"
plain
@
click=
"handleSave"
>
<Icon
class=
"mr-5px"
icon=
"ep:plus"
/>
<Icon
class=
"mr-5px"
icon=
"ep:plus"
/>
保存
保存
</el-button>
</el-button>
</
template
>
</
template
>
</FcDesigner>
</fc-designer>
</div>
</ContentWrap>
</ContentWrap>
<!-- 表单保存的弹窗 -->
<!-- 表单保存的弹窗 -->
...
@@ -55,6 +59,31 @@ const { push, currentRoute } = useRouter() // 路由
...
@@ -55,6 +59,31 @@ const { push, currentRoute } = useRouter() // 路由
const
{
query
}
=
useRoute
()
// 路由信息
const
{
query
}
=
useRoute
()
// 路由信息
const
{
delView
}
=
useTagsViewStore
()
// 视图操作
const
{
delView
}
=
useTagsViewStore
()
// 视图操作
// 表单设计器配置
const
designerConfig
=
ref
({
switchType
:
[],
// 是否可以切换组件类型,或者可以相互切换的字段
autoActive
:
true
,
// 是否自动选中拖入的组件
useTemplate
:
false
,
// 是否生成vue2语法的模板组件
formOptions
:
{},
// 定义表单配置默认值
fieldReadonly
:
false
,
// 配置field是否可以编辑
hiddenDragMenu
:
false
,
// 隐藏拖拽操作按钮
hiddenDragBtn
:
false
,
// 隐藏拖拽按钮
hiddenMenu
:
[],
// 隐藏部分菜单
hiddenItem
:
[],
// 隐藏部分组件
hiddenItemConfig
:
{},
// 隐藏组件的部分配置项
disabledItemConfig
:
{},
// 禁用组件的部分配置项
showSaveBtn
:
false
,
// 是否显示保存按钮
showConfig
:
true
,
// 是否显示右侧的配置界面
showBaseForm
:
true
,
// 是否显示组件的基础配置表单
showControl
:
true
,
// 是否显示组件联动
showPropsForm
:
true
,
// 是否显示组件的属性配置表单
showEventForm
:
true
,
// 是否显示组件的事件配置表单
showValidateForm
:
true
,
// 是否显示组件的验证配置表单
showFormConfig
:
true
,
// 是否显示表单配置
showInputData
:
true
,
// 是否显示录入按钮
showDevice
:
true
,
// 是否显示多端适配选项
appendConfigData
:
[]
// 定义渲染规则所需的formData
})
const
designer
=
ref
()
// 表单设计器
const
designer
=
ref
()
// 表单设计器
useFormCreateDesigner
(
designer
)
// 表单设计器增强
useFormCreateDesigner
(
designer
)
// 表单设计器增强
const
dialogVisible
=
ref
(
false
)
// 弹窗是否展示
const
dialogVisible
=
ref
(
false
)
// 弹窗是否展示
...
@@ -119,3 +148,13 @@ onMounted(async () => {
...
@@ -119,3 +148,13 @@ onMounted(async () => {
setConfAndFields
(
designer
,
data
.
conf
,
data
.
fields
)
setConfAndFields
(
designer
,
data
.
conf
,
data
.
fields
)
})
})
</
script
>
</
script
>
<
style
>
.my-designer
{
._fc-l,
._fc-m,
._fc-r
{
border-top
:
none
;
}
}
</
style
>
src/views/infra/build/index.vue
View file @
2ff9904f
<
template
>
<
template
>
<ContentWrap>
<ContentWrap
:body-style=
"
{ padding: '0px' }" class="!mb-0">
<el-row>
<el-col>
<div
class=
"float-right mb-2"
>
<el-button
size=
"small"
type=
"primary"
@
click=
"showJson"
>
生成 JSON
</el-button>
<el-button
size=
"small"
type=
"success"
@
click=
"showOption"
>
生成 Options
</el-button>
<el-button
size=
"small"
type=
"danger"
@
click=
"showTemplate"
>
生成组件
</el-button>
</div>
</el-col>
</el-row>
<!-- 表单设计器 -->
<!-- 表单设计器 -->
<FcDesigner
ref=
"designer"
height=
"780px"
/>
<div
class=
"h-[calc(100vh-var(--top-tool-height)-var(--tags-view-height)-var(--app-content-padding)-var(--app-content-padding)-2px)]"
>
<fc-designer
class=
"my-designer"
ref=
"designer"
:config=
"designerConfig"
>
<template
#
handle
>
<el-button
size=
"small"
type=
"primary"
plain
@
click=
"showJson"
>
生成JSON
</el-button>
<el-button
size=
"small"
type=
"success"
plain
@
click=
"showOption"
>
生成Options
</el-button>
<el-button
size=
"small"
type=
"danger"
plain
@
click=
"showTemplate"
>
生成组件
</el-button>
</
template
>
</fc-designer>
</div>
</ContentWrap>
</ContentWrap>
<!-- 弹窗:表单预览 -->
<!-- 弹窗:表单预览 -->
...
@@ -43,6 +44,31 @@ defineOptions({ name: 'InfraBuild' })
...
@@ -43,6 +44,31 @@ defineOptions({ name: 'InfraBuild' })
const
{
t
}
=
useI18n
()
// 国际化
const
{
t
}
=
useI18n
()
// 国际化
const
message
=
useMessage
()
// 消息
const
message
=
useMessage
()
// 消息
// 表单设计器配置
const
designerConfig
=
ref
({
switchType
:
[],
// 是否可以切换组件类型,或者可以相互切换的字段
autoActive
:
true
,
// 是否自动选中拖入的组件
useTemplate
:
false
,
// 是否生成vue2语法的模板组件
formOptions
:
{},
// 定义表单配置默认值
fieldReadonly
:
false
,
// 配置field是否可以编辑
hiddenDragMenu
:
false
,
// 隐藏拖拽操作按钮
hiddenDragBtn
:
false
,
// 隐藏拖拽按钮
hiddenMenu
:
[],
// 隐藏部分菜单
hiddenItem
:
[],
// 隐藏部分组件
hiddenItemConfig
:
{},
// 隐藏组件的部分配置项
disabledItemConfig
:
{},
// 禁用组件的部分配置项
showSaveBtn
:
false
,
// 是否显示保存按钮
showConfig
:
true
,
// 是否显示右侧的配置界面
showBaseForm
:
true
,
// 是否显示组件的基础配置表单
showControl
:
true
,
// 是否显示组件联动
showPropsForm
:
true
,
// 是否显示组件的属性配置表单
showEventForm
:
true
,
// 是否显示组件的事件配置表单
showValidateForm
:
true
,
// 是否显示组件的验证配置表单
showFormConfig
:
true
,
// 是否显示表单配置
showInputData
:
true
,
// 是否显示录入按钮
showDevice
:
true
,
// 是否显示多端适配选项
appendConfigData
:
[]
// 定义渲染规则所需的formData
})
const
designer
=
ref
()
// 表单设计器
const
designer
=
ref
()
// 表单设计器
const
dialogVisible
=
ref
(
false
)
// 弹窗的是否展示
const
dialogVisible
=
ref
(
false
)
// 弹窗的是否展示
const
dialogTitle
=
ref
(
''
)
// 弹窗的标题
const
dialogTitle
=
ref
(
''
)
// 弹窗的标题
...
@@ -140,3 +166,13 @@ onMounted(async () => {
...
@@ -140,3 +166,13 @@ onMounted(async () => {
hljs
.
registerLanguage
(
'json'
,
json
)
hljs
.
registerLanguage
(
'json'
,
json
)
})
})
</
script
>
</
script
>
<
style
>
.my-designer
{
._fc-l,
._fc-m,
._fc-r
{
border-top
:
none
;
}
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment