From 810fb4b698f5450d04e5769f32ced55a9115f6fa Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期三, 10 四月 2024 11:57:50 +0800
Subject: [PATCH] 富文本以及路由改造
---
Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue | 80 ++++++++++++++++++++++++----------------
1 files changed, 48 insertions(+), 32 deletions(-)
diff --git a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue
index af3363a..86c330a 100644
--- a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue
+++ b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue
@@ -6,7 +6,7 @@
:areasData="uiDefineVO.northAreas"
:inDialog="inDialog"
:sourceData="sourceData"
- :dataStore="checkedData.northAreaInDialog[0]"
+ :dataStore="checkedData.northAreaInDialog"
:paramVOS="paramVOS"
@setDataStore="setDataStore">
</UIContentArea>
@@ -18,30 +18,30 @@
:areasData="uiDefineVO.westAreas"
:inDialog="inDialog"
:sourceData="sourceData"
- :dataStore="checkedData.westAreaInDialog[0]"
+ :dataStore="checkedData.westAreaInDialog"
:paramVOS="paramVOS"
@setDataStore="setDataStore">
</UIContentArea>
</el-aside>
- <el-container style="height: 100%">
- <el-main v-if="uiDefineVO.centerAreas && uiDefineVO.centerAreas.length>0" :style="'height: '+centerHeight">
+ <el-container style="height: 100%;display: block">
+ <el-main v-if="uiDefineVO.centerAreas && uiDefineVO.centerAreas.length>0" :style="'min-height: 260px;height: '+centerHeight">
<UIContentArea :key="'centerArea-'+uiDefineVO.oid" areas-name="centerAreaInDialog"
cradStyle=""
:areasData="uiDefineVO.centerAreas"
:inDialog="inDialog"
- :sourceData="checkedData.westAreaInDialog[0]"
- :dataStore="checkedData.centerAreaInDialog[0]"
+ :sourceData="checkedData.westAreaInDialog[checkedData.westAreaInDialog.length-1]"
+ :dataStore="checkedData.centerAreaInDialog"
:paramVOS="paramVOS"
@setDataStore="setDataStore">
</UIContentArea>
</el-main>
- <el-footer v-if="uiDefineVO.southAreas && uiDefineVO.southAreas.length>0" height="35%" style="max-height: 300px">
+ <el-footer v-if="uiDefineVO.southAreas && uiDefineVO.southAreas.length>0" height="35%" style="min-height: 150px;">
<UIContentArea :key="'southArea-'+uiDefineVO.oid" areas-name="southAreaInDialog"
cradStyle=""
:areasData="uiDefineVO.southAreas"
:inDialog="inDialog"
- :sourceData="checkedData.centerAreaInDialog[0]"
- :dataStore="checkedData.southAreaInDialog[0]"
+ :sourceData="checkedData.centerAreaInDialog[checkedData.centerAreaInDialog.length-1]"
+ :dataStore="checkedData.southAreaInDialog"
:paramVOS="paramVOS"
@setDataStore="setDataStore">
</UIContentArea>
@@ -53,18 +53,25 @@
<script>
import UIContentArea from "@/views/base/UIContentArea"
-import {uiDefineVOData} from "@/views/base/uiDefineVOInDialog"
+import {verifyNull} from "@/util/validate";
+import {getUIContent} from '@/api/base/region'
export default {
name: "UIContentViewerInDialog",
components:{UIContentArea},
props:{
+ btmType:{
+ type: String,
+ },
+ content:{
+ type: String,
+ },
inDialog: {
type: Boolean,
default: false
},
sourceData:{
- //鑿滃崟婧愭暟鎹垨鑰呭脊绐楁椂鎸夐挳鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁
+ //鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁
type:Object,
default: {}
},
@@ -76,46 +83,55 @@
paramVOS:{
type:Object,
default: {}
- },
- customOptions:{
- type:Object,
- default: {}
}
},
data() {
return {
- btmType:this.customOptions.btmType,//涓氬姟绫诲瀷锛堟垨閾炬帴绫诲瀷锛�
- content:this.customOptions.content,//UI涓婁笅鏂囩殑鍚嶇О
checkedData:{
//鍚勫尯鍩熼�変腑鏁版嵁
- northAreaInDialog:[],
- westAreaInDialog:[],
- centerAreaInDialog:[],
- southAreaInDialog:[]
+ northAreaInDialog:[{}],
+ westAreaInDialog:[{}],
+ centerAreaInDialog:[{}],
+ southAreaInDialog:[{}]
},
- uiDefineVO: uiDefineVOData,
+ uiDefineVO: {},
centerHeight:'100%'
}
},
watch: {
-
+ typeAContent:{
+ handler(newV,oldV){
+ if(oldV!=newV && !verifyNull(newV)){
+ this.initUI();
+ }
+ },
+ immediate: true,
+ }
},
computed: {
-
+ typeAContent(){
+ return this.btmType+this.content;
+ }
},
created() {
- if (this.uiDefineVO.southAreas && this.uiDefineVO.southAreas.length > 0) {
- this.centerHeight = 'calc(100% - 310px)';
- } else {
- this.centerHeight = '100%';
+ if (verifyNull(this.btmType) || verifyNull(this.content) ) {
+ this.$message.error("鑷畾涔夌粍浠堕厤缃殑淇℃伅閿欒锛岃鍙傝�僢s=name?type=xxx&context=yyy¶m=zzz杩欑褰㈠紡銆傚叾涓璽ype鏄笟鍔$被鍨嬶紙鎴栭摼鎺ョ被鍨嬶級锛宑ontext鏄疷I涓婁笅鏂囩殑鍚嶇О,name涓虹粍浠跺悕绉帮紝绌哄�兼椂榛樿灞曠ずUI寮曟搸");
+ return false;
}
},
methods: {
- initUI(){
-
+ initUI() {
+ getUIContent({btmType: this.btmType, id: this.content}).then(res => {
+ this.uiDefineVO = res.data.obj;
+ this.initContent();
+ })
},
- initContent(){
-
+ initContent() {
+ if (this.uiDefineVO.southAreas && this.uiDefineVO.southAreas.length > 0) {
+ this.centerHeight = '65%';
+ } else {
+ this.centerHeight = '100%';
+ }
},
setDataStore(value) {
this.checkedData[value.area] = value.dataStore;
--
Gitblit v1.9.3