From 6928489ffd5055f1b5a8b9e0432d36448bd8e4c1 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期五, 15 十一月 2024 16:15:35 +0800
Subject: [PATCH] 修改action

---
 Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-custom.vue |   77 ++++++++++++++++++++++----------------
 1 files changed, 44 insertions(+), 33 deletions(-)

diff --git a/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-custom.vue b/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-custom.vue
index 360191b..213bcff 100644
--- a/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-custom.vue
+++ b/Source/plt-web/plt-web-ui/src/components/dynamic-components/dynamic-custom.vue
@@ -18,7 +18,9 @@
                :sourceData="sourceData"
                :dataStore="dataStore"
                :areasName="areasName"
-               :paramVOS="urlParams"></component>
+               :paramVOS="urlParams"
+               @setData="setData"
+               @setDataStore="setDataStore"></component>
   </div>
 </template>
 
@@ -86,11 +88,10 @@
     }
   },
   watch: {
-    sourceData: {
+    sourceData:{
       handler(newval) {
         //婧愭暟鎹湁鍙樺寲鏃跺彉鏇村綋鍓嶅尯鍩熸暟鎹�
-        console.log(this.areasName);
-        console.log(newval);
+        this.sourceDataMap();
       },
       deep: true,
       immediate: true
@@ -98,40 +99,43 @@
   },
   computed: {},
   created() {
-    this.customClass=this.componentVO.customClass;
-    this.componentVO.customClass.split(';').forEach(item=>{
-      if(item.indexOf('web=')==0){
-        this.customClass=item.split('web=')[1];
-      }
-    })
-    let urlParams = {};
-    // 濡傛灉璺緞涓瓨鍦� '?'锛屽垯鍙栭棶鍙峰墠闈㈤儴鍒嗙粰 parts
-    if (this.customClass.includes('?')) {
-      this.ComponentUrl = this.customClass.split("?")[0];
-      urlParams = queryStringToObject(this.customClass);
-    } else {
-      this.ComponentUrl = this.customClass; // 涓嶅瓨鍦� '?' 鏁存潯璺緞灏辨槸 parts
-    }
-    if(validatenull(this.ComponentUrl) || ['ui', 'UI', 'base','bs'].includes(this.ComponentUrl)){
-      this.ComponentUrl='views/base/UIContentViewerInDialog';
-    }else if(this.ComponentUrl.indexOf('views/')===-1){
-      this.ComponentUrl='views/custom-ui/'+this.ComponentUrl;
-    }
-
-    if (this.ComponentUrl=='base/UIContentViewerInDialog' && (!urlParams.type || !urlParams.context)) {
-      this.isError = true;
-      return;
-    }
-
-    this.btmType = urlParams.type;
-    this.context = urlParams.context;
-    this.urlParams = Object.assign({},this.paramVOS, urlParams)
-    this.loadCompoent();
+    this.sourceDataMap();
   },
   mounted() {
     //this.getHeight(this.$parent);
   },
   methods: {
+    sourceDataMap: function () {
+      this.customClass=this.componentVO.customClass;
+      this.componentVO.customClass.split(';').forEach(item=>{
+        if(item.indexOf('web=')==0){
+          this.customClass=item.split('web=')[1];
+        }
+      })
+      let urlParams = {};
+      // 濡傛灉璺緞涓瓨鍦� '?'锛屽垯鍙栭棶鍙峰墠闈㈤儴鍒嗙粰 parts
+      if (this.customClass.includes('?')) {
+        this.ComponentUrl = this.customClass.split("?")[0];
+        urlParams = queryStringToObject(this.customClass);
+      } else {
+        this.ComponentUrl = this.customClass; // 涓嶅瓨鍦� '?' 鏁存潯璺緞灏辨槸 parts
+      }
+      if(validatenull(this.ComponentUrl) || ['ui', 'UI', 'base','bs'].includes(this.ComponentUrl)){
+        this.ComponentUrl='views/base/UIContentViewerInDialog';
+      }else if(this.ComponentUrl.indexOf('views/')===-1){
+        this.ComponentUrl='views/custom-ui/'+this.ComponentUrl;
+      }
+
+      if (this.ComponentUrl=='base/UIContentViewerInDialog' && (!urlParams.type || !urlParams.context)) {
+        this.isError = true;
+        return;
+      }
+
+      this.btmType = urlParams.type;
+      this.context = urlParams.context;
+      this.urlParams = Object.assign({},this.paramVOS, urlParams)
+      this.loadCompoent();
+    },
     loadCompoent(){
       // 鍔ㄦ�佸鍏ョ粍浠�
       import(`@/${this.ComponentUrl}.vue`).then((module) => {
@@ -148,6 +152,13 @@
       } else {
         this.getHeight(el.$parent);
       }
+    },
+    setDataStore(value) {
+      this.$emit("setDataStore", value);
+      this.dataStore = value.dataStore;
+    },
+    setData(value) {
+      this.$emit("setData", value);
     }
   }
 }

--
Gitblit v1.9.3