From 8be3182372eb774dce8f9c97a0b51c03bda165c7 Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期一, 08 四月 2024 15:33:11 +0800 Subject: [PATCH] UI展示 --- Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue | 19 ++- Source/ProjectWeb/src/page/index/index.vue | 230 +++++++++++++++++++++++----------------------- Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue | 13 +- Source/ProjectWeb/src/views/base/UIContentViewer.vue | 24 +++- 4 files changed, 151 insertions(+), 135 deletions(-) diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue index de695df..9641b5f 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue @@ -81,8 +81,7 @@ }, data() { return { - form: {}, - ruleForm:{} + form: {} } }, mounted() { @@ -107,7 +106,7 @@ }, immediate: true, }, - ruleForm: { + form: { handler(val) { if (val) { if (Array.isArray(val)) { // 妫�鏌� val 鏄惁涓烘暟缁� @@ -228,7 +227,7 @@ if (code.type == "refer") { if (code.referConfig && code.referConfig.useFormKey) { if (verifyNull(code.referConfig.formValuesKey)) { - code.referConfig.formValuesKey = "ruleForm"; + code.referConfig.formValuesKey = "form"; } code.referConfig.formValues = this[code.referConfig.formValuesKey]; } @@ -249,8 +248,8 @@ }, setReferValue(data) { if (data && data.prop) { - this.ruleForm[data.prop] = data.value || ""; - this.ruleForm[data.showProp] = data.text || ""; + this.form[data.prop] = data.value || ""; + this.form[data.showProp] = data.text || ""; if (data.propMap) { //璇存槑闇�瑕佹槧灏� for (let key in data.propMap) { @@ -278,7 +277,7 @@ value.push(temp); } }); - this.ruleForm[key] = value.join(","); + this.form[key] = value.join(","); } } } diff --git a/Source/ProjectWeb/src/page/index/index.vue b/Source/ProjectWeb/src/page/index/index.vue index 1fdad95..93689d3 100644 --- a/Source/ProjectWeb/src/page/index/index.vue +++ b/Source/ProjectWeb/src/page/index/index.vue @@ -29,129 +29,129 @@ </template> <script> - import {mapGetters} from "vuex"; - import tags from "./tags"; - import search from "./search"; - import top from "./top/"; - import sidebar from "./sidebar/"; - import admin from "@/util/admin"; - import {validatenull} from "@/util/validate"; - import {calcDate} from "@/util/date.js"; - import {getStore} from "@/util/store.js"; +import {mapGetters} from "vuex"; +import tags from "./tags"; +import search from "./search"; +import top from "./top/"; +import sidebar from "./sidebar/"; +import admin from "@/util/admin"; +import {validatenull} from "@/util/validate"; +import {calcDate} from "@/util/date.js"; +import {getStore} from "@/util/store.js"; - export default { - components: { - top, - tags, - search, - sidebar +export default { + components: { + top, + tags, + search, + sidebar + }, + name: "index", + provide() { + return { + index: this + }; + }, + data() { + return { + //鎼滅储鎺у埗 + isSearch: false, + //鍒锋柊token閿� + refreshLock: false, + //鍒锋柊token鐨勬椂闂� + refreshTime: "", + loading:true + }; + }, + + created() { + //瀹炴椂妫�娴嬪埛鏂皌oken + //this.refreshToken(); + + }, + mounted() { + this.init(); + // 宸︿晶鑿滃崟鍔犺浇 + setTimeout(()=>{ + this.loading=false + },600) + }, + computed: mapGetters(["isMenu", "isLock", "isCollapse", "website", "menu"]), + props: [], + methods: { + showCollapse() { + this.$store.commit("SET_COLLAPSE"); }, - name: "index", - provide() { - return { - index: this + // 鍒濆鍖� + init() { + this.$store.commit("SET_SCREEN", admin.getScreen()); + window.onresize = () => { + setTimeout(() => { + this.$store.commit("SET_SCREEN", admin.getScreen()); + }, 0); + }; + this.$store.dispatch("FlowRoutes").then(() => { + }); }, - data() { - return { - //鎼滅储鎺у埗 - isSearch: false, - //鍒锋柊token閿� - refreshLock: false, - //鍒锋柊token鐨勬椂闂� - refreshTime: "", - loading:true - }; - }, - - created() { - //瀹炴椂妫�娴嬪埛鏂皌oken - this.refreshToken(); - - }, - mounted() { - this.init(); - // 宸︿晶鑿滃崟鍔犺浇 - setTimeout(()=>{ - this.loading=false - },600) - }, - computed: mapGetters(["isMenu", "isLock", "isCollapse", "website", "menu"]), - props: [], - methods: { - showCollapse() { - this.$store.commit("SET_COLLAPSE"); - }, - // 鍒濆鍖� - init() { - this.$store.commit("SET_SCREEN", admin.getScreen()); - window.onresize = () => { - setTimeout(() => { - this.$store.commit("SET_SCREEN", admin.getScreen()); - }, 0); - - }; - this.$store.dispatch("FlowRoutes").then(() => { - }); - }, - //鎵撳紑鑿滃崟 - openMenu(item = {}) { - this.$store.dispatch("GetMenu", item.id).then(data => { - if (data.length !== 0) { - this.$router.$avueRouter.formatRoutes(data, true); - } - //褰撶偣鍑婚《閮ㄨ彍鍗曞悗榛樿鎵撳紑绗竴涓彍鍗� - /*if (!this.validatenull(item)) { - let itemActive = {}, - childItemActive = 0; - if (item.path) { - itemActive = item; + //鎵撳紑鑿滃崟 + openMenu(item = {}) { + this.$store.dispatch("GetMenu", item.id).then(data => { + if (data.length !== 0) { + this.$router.$avueRouter.formatRoutes(data, true); + } + //褰撶偣鍑婚《閮ㄨ彍鍗曞悗榛樿鎵撳紑绗竴涓彍鍗� + /*if (!this.validatenull(item)) { + let itemActive = {}, + childItemActive = 0; + if (item.path) { + itemActive = item; + } else { + if (this.menu[childItemActive].length === 0) { + itemActive = this.menu[childItemActive]; } else { - if (this.menu[childItemActive].length === 0) { - itemActive = this.menu[childItemActive]; - } else { - itemActive = this.menu[childItemActive].children[childItemActive]; - } + itemActive = this.menu[childItemActive].children[childItemActive]; } - this.$store.commit('SET_MENU_ID', item); - this.$router.push({ - path: this.$router.$avueRouter.getPath({ - name: (itemActive.label || itemActive.name), - src: itemActive.path - }, itemActive.meta) - }); - }*/ - - }); - }, - // 瀹氭椂妫�娴媡oken - refreshToken() { - this.refreshTime = setInterval(() => { - const token = getStore({ - name: "token", - debug: true - }) || {}; - const date = calcDate(token.datetime, new Date().getTime()); - if (validatenull(date)) return; - if (date.seconds >= this.website.tokenTime && !this.refreshLock) { - this.refreshLock = true; - this.$store - .dispatch("refreshToken") - .then(() => { - this.refreshLock = false; - }) - .catch(() => { - this.refreshLock = false; - }); } - }, 10000); - } + this.$store.commit('SET_MENU_ID', item); + this.$router.push({ + path: this.$router.$avueRouter.getPath({ + name: (itemActive.label || itemActive.name), + src: itemActive.path + }, itemActive.meta) + }); + }*/ + + }); + }, + // 瀹氭椂妫�娴媡oken + refreshToken() { + this.refreshTime = setInterval(() => { + const token = getStore({ + name: "token", + debug: true + }) || {}; + const date = calcDate(token.datetime, new Date().getTime()); + if (validatenull(date)) return; + if (date.seconds >= this.website.tokenTime && !this.refreshLock) { + this.refreshLock = true; + this.$store + .dispatch("refreshToken") + .then(() => { + this.refreshLock = false; + }) + .catch(() => { + this.refreshLock = false; + }); + } + }, 10000); } - }; + } +}; </script> <style lang="scss"> - #avue-view .avue-view{ - height: 100%; - padding: 0 6px !important; - } +#avue-view > .avue-view{ + height: 100%; + padding: 0 6px !important; +} </style> diff --git a/Source/ProjectWeb/src/views/base/UIContentViewer.vue b/Source/ProjectWeb/src/views/base/UIContentViewer.vue index 8b2cd6b..44104ce 100644 --- a/Source/ProjectWeb/src/views/base/UIContentViewer.vue +++ b/Source/ProjectWeb/src/views/base/UIContentViewer.vue @@ -54,7 +54,6 @@ <script> import {verifyNull} from "@/util/validate"; import UIContentArea from "@/views/base/UIContentArea" -import {uiDefineVOData} from "@/views/base/uiDefineVO" import {getUIContent} from '@/api/base/region' export default { @@ -78,8 +77,21 @@ sourceData: {}, } }, - watch: {}, - computed: {}, + watch: { + typeAContent:{ + handler(newV,oldV){ + if(oldV!=newV && !verifyNull(newV)){ + this.initUI(); + } + }, + immediate: true, + } + }, + computed: { + typeAContent(){ + return this.btmType+this.content; + } + }, created() { if (verifyNull(this.$route.query.type) || (verifyNull(this.$route.query.context) && verifyNull(this.$route.query.content))) { this.$message.error("閰嶇疆鐨勪俊鎭敊璇紝璇峰弬鑰僢s=缁勪欢name?type=xxx&context=yyy¶m=zzz杩欑褰㈠紡銆傚叾涓璽ype鏄笟鍔$被鍨嬶紙鎴栭摼鎺ョ被鍨嬶級锛宑ontext鏄疷I涓婁笅鏂囩殑鍚嶇О"); @@ -88,15 +100,13 @@ this.btmType = this.$route.query.type; this.content = this.$route.query.context || this.$route.query.content; this.sourceData = this.$route.query; - this.initUI(); - this.initContent(); }, methods: { initUI() { - const query = {btmType: 'folder', id: 'cardtemplatemanager'} - getUIContent(query).then(res => { + getUIContent({btmType: this.btmType, id: this.content}).then(res => { console.log(res.data.obj) this.uiDefineVO = res.data.obj; + this.initContent(); }) }, initContent() { diff --git a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue index 120ac2f..1ac86c5 100644 --- a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue +++ b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue @@ -100,25 +100,32 @@ } }, watch: { - + typeAContent:{ + handler(newV,oldV){ + if(oldV!=newV && !verifyNull(newV)){ + this.initUI(); + } + }, + immediate: true, + } }, computed: { - + typeAContent(){ + return this.btmType+this.content; + } }, created() { 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; } - this.initUI(); - this.initContent(); }, methods: { initUI() { - const query = {btmType: 'folder', id: 'cardtemplatemanager'} - getUIContent(query).then(res => { + getUIContent({btmType: this.btmType, id: this.content}).then(res => { console.log(res.data.obj) this.uiDefineVO = res.data.obj; + this.initContent(); }) }, initContent() { -- Gitblit v1.9.3