From 107edc1584cd8e89a0f85b8fdc120194d1858934 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期四, 25 四月 2024 15:32:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue | 51 ++++++++++++++++++++++++++++++++++-----------------
1 files changed, 34 insertions(+), 17 deletions(-)
diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue
index c15d92f..2358b28 100644
--- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue
+++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue
@@ -2,15 +2,16 @@
<div class="UI-dynamic" :id="'UI-dynamic-'+areasName+componentVO.oid">
<el-alert
class="alert"
+ :closable="false"
v-if="isError"
title="鑷畾涔夌粍浠堕厤缃俊鎭敊璇紒"
type="error"
show-icon
- description="杩欎釜鑷畾涔夐〉闈㈢殑鍦板潃鏍煎紡涓嶆纭�傛帹鑽愪娇鐢╞s=缁勪欢name?type=xxx&context=yyy&pparam=zzz杩欑褰㈠紡">
+ description="杩欎釜鑷畾涔夐〉闈㈢殑鍦板潃鏍煎紡涓嶆纭�傛帹鑽愪娇鐢ㄢ�滅粍浠秐ame?param=xxx鈥濓紙鑷畾涔夌粍浠讹級鎴栬�呪��?type=xxx&context=yyy&pparam=zzz鈥濓紙UI寮曟搸锛夎繖2绉嶅舰寮�">
</el-alert>
<component v-else :is="currentComponent"
:btmType="btmType"
- :content="content"
+ :context="context"
:inDialog="true"
:key="areasName+'customCom-'+componentVO.oid"
:componentVO="componentVO"
@@ -23,6 +24,7 @@
<script>
import {queryStringToObject} from '@/util/util'
+import {validatenull} from "@/util/validate";
export default {
name: "dynamic-custom",
components: {
@@ -31,6 +33,14 @@
'test2': () => import('@/views/custom-ui/test2'),
},
props: {
+ //ui涓婁笅鏂囩殑涓氬姟绫诲瀷锛堟垨閾炬帴绫诲瀷锛�
+ uiBtmType: {
+ type: String
+ },
+ //ui涓婁笅鏂�
+ uiContext:{
+ type: String
+ },
componentVO: {
type: Object,
default: {}
@@ -66,10 +76,10 @@
data() {
return {
btmType: '',
- content: '',
+ context: '',
urlParams: {},
height: '300px',
- customClass: this.componentVO.customClass, //bs=?type=xxx&context=yyy¶m=zzz 鎴栬�� bs=缁勪欢name?type=xxx&context=yyy¶m=zzz
+ customClass: '', //?type=xxx&context=yyy¶m=zzz 鎴栬�� 缁勪欢name?type=xxx&context=yyy¶m=zzz
isError: false, //璺緞瑙f瀽澶辫触
currentComponent: 'UI',//缁勪欢name
}
@@ -88,24 +98,31 @@
},
mounted() {
- if (this.customClass.indexOf("bs=") < 0) {
+ this.componentVO.customClass.split(';').forEach(item=>{
+ if(item.indexOf('web=')==0){
+ this.customClass=item.split('web=')[1];
+ }
+ })
+ // 濡傛灉璺緞涓瓨鍦� '?'锛屽垯鍙栭棶鍙峰墠闈㈤儴鍒嗙粰 parts
+ if (this.customClass.includes('?')) {
+ this.currentComponent = this.customClass.split("?")[0];
+ } else {
+ this.currentComponent = this.customClass; // 涓嶅瓨鍦� '?' 鏁存潯璺緞灏辨槸 parts
+ }
+ if(validatenull(this.currentComponent)){
+ this.currentComponent='UI';
+ }
+ if (['UI', 'ui'].includes(this.currentComponent) && (this.customClass.indexOf("type=") < 0 || this.customClass.indexOf("context=") < 0)) {
this.isError = true;
return;
}
- this.customClass = this.componentVO.customClass.split("bs=")[1];
- if (this.customClass.indexOf("?") < 0 || this.customClass.indexOf("type=") < 0 || this.customClass.indexOf("context=") < 0) {
- this.isError = true;
- return;
+ let urlParams = {};
+ if(this.customClass.includes('?')) {
+ urlParams = queryStringToObject(this.customClass);
}
- if (this.customClass.split('?')[0] != '' && this.customClass.split('?')[0] != 'UI' && this.customClass.split('?')[0] != 'ui') {
- this.currentComponent = this.customClass.split('?')[0];
- }
- let urlParams = queryStringToObject(this.customClass);
- let btmType = urlParams.type;
- let content = urlParams.context;
- this.btmType = btmType;
- this.content = content;
+ this.btmType = urlParams.type;
+ this.context = urlParams.context;
this.urlParams = Object.assign(this.paramVOS, urlParams)
//this.getHeight(this.$parent);
--
Gitblit v1.9.3