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