zhoucg před 1 rokem
rodič
revize
04f690ab6e

+ 5 - 2
src/components/config/globalConfig.ts

@@ -79,9 +79,12 @@ export const elementList = [
             width: 500,
             height: 200,
             fontSize: 12,
-            background: null,
+            background: '#FFFFFF',
             rotate: 0,
-            padding: '0'
+            padding: '0',
+            borderWidth: 0,
+            borderPosition: [],
+            borderColor: '#FFFFFF',
         },
         groupStyle: {}
     },

+ 23 - 10
src/components/elements/YvanRichTextProps.vue

@@ -2,39 +2,52 @@
   <section class="yvan-rich-text-props">
     <el-form ref="form" label-position="top">
       <el-form-item label="宽度">
-        <el-input-number controls-position="right"/>
+        <el-input-number v-model="activeComponent.style.width" controls-position="right"/>
       </el-form-item>
       <el-form-item label="高度">
-        <el-input-number controls-position="right"/>
+        <el-input-number v-model="activeComponent.style.height" controls-position="right"/>
       </el-form-item>
       <el-form-item label="背景颜色">
-        <el-color-picker show-alpha/>
+        <el-color-picker v-model="activeComponent.style.background"/>
       </el-form-item>
       <el-form-item label="边框类型">
-        <el-select placeholder="请选择边框类型">
-          <el-option label="font.name" value="font.code"/>
+        <el-select v-model="activeComponent.style.borderType" placeholder="请选择边框类型" filterable>
+          <el-option v-for="borderStyle in borderStyleList" :label="borderStyle.label" :value="borderStyle.code"/>
         </el-select>
       </el-form-item>
       <el-form-item label="边框颜色">
-        <el-color-picker show-alpha/>
+        <el-color-picker v-model="activeComponent.style.borderColor"/>
       </el-form-item>
       <el-form-item label="边框宽度">
-        <el-input-number controls-position="right"/>
+        <el-input-number v-model="activeComponent.style.borderWidth" controls-position="right"/>
       </el-form-item>
       <el-form-item label="旋转角度(°)">
-        <el-input-number controls-position="right"/>
+        <el-input-number v-model="activeComponent.style.rotate" controls-position="right"/>
       </el-form-item>
     </el-form>
   </section>
 </template>
 
 <script lang="ts">
+import {mapState} from "pinia";
+import {globalStore} from "@/store";
+import {borderStyleList} from "@/components/config/globalConfig";
 
 export default {
   name: 'YvanRichTextProps',
   data() {
-    return {}
-  }
+    return {
+      borderStyleList
+    }
+  },
+  computed: {
+    ...mapState(globalStore, {
+      activeComponent: (state) => {
+        console.log("activeComponent => ", state.curComponent)
+        return state.curComponent
+      }
+    }),
+  },
 }
 
 </script>