|
@@ -1,34 +1,11 @@
|
|
|
<template>
|
|
|
- <el-form ref="form" label-position="top">
|
|
|
- <el-form-item label="背景颜色">
|
|
|
- <el-color-picker v-model="activeComponent.style.background"/>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="边框颜色">
|
|
|
- <el-color-picker v-model="activeComponent.style.borderColor"/>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="边框类型">
|
|
|
- <el-select v-model="activeComponent.style.borderType" placeholder="请选择边框类型" filterable>
|
|
|
- <el-option v-for="borderType in borderTypeList" :label="borderType.label" :value="borderType.code"/>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="边框宽度">
|
|
|
- <el-input-number v-model="activeComponent.style.borderWidth" :min="0" controls-position="right"/>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="字体">
|
|
|
- <el-select v-model="activeComponent.style.fontFamily" placeholder="请选择字体" filterable>
|
|
|
- <el-option v-for="font in fontList" :label="font.name" :value="font.code"/>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="字体颜色">
|
|
|
- <el-color-picker v-model="activeComponent.style.fontColor"/>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="字体大小(pt)">
|
|
|
- <el-input-number v-model="activeComponent.style.fontSize" :min="0" controls-position="right"/>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <component v-if="!!activeComponentPropsName" :is="activeComponentPropsName" />
|
|
|
+ <div v-else>
|
|
|
+ <span>请先拖拽组件至表格单元格</span>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
|
|
|
-<script>
|
|
|
+<script lang="js">
|
|
|
import {mapState} from "pinia";
|
|
|
import {globalStore} from "@/store";
|
|
|
import {fontList, borderTypeList} from "@/components/config/globalConfig";
|
|
@@ -44,10 +21,14 @@ export default {
|
|
|
computed: {
|
|
|
...mapState(globalStore, {
|
|
|
activeComponent: (state) => {
|
|
|
- console.log("activeComponent => ", state.curComponent)
|
|
|
return state.curComponent
|
|
|
}
|
|
|
}),
|
|
|
+ activeComponentPropsName() {
|
|
|
+ const selectedCell = globalStore().getSelectedTableCell();
|
|
|
+ const componentName = this.activeComponent.config[selectedCell.bandRowName]?.rows[selectedCell.rowNo - 1]?.cols[selectedCell.colNo]?.element?.component
|
|
|
+ return !componentName ? "" : componentName + 'Props';
|
|
|
+ }
|
|
|
},
|
|
|
}
|
|
|
</script>
|