feat--文本栏文本、滚动文本、表格被联动

qianming 2 years ago
parent 07a930ff66
commit db13276b94

@ -7,6 +7,8 @@
</template>
<script>
import {targetWidgetLinkageLogic} from "@/views/bigscreenDesigner/designer/linkageLogic";
export default {
name: "WidgetMarquee",
components: {},
@ -16,7 +18,8 @@ export default {
},
data() {
return {
options: {}
options: {},
flagInter: null,
};
},
computed: {
@ -42,6 +45,9 @@ export default {
styleColor: this.transStyle.marqueeQuit
};
},
allComponentLinkage() {
return this.$store.state.designer.allComponentLinkage;
},
isBehavior() {
return this.styleColor.marqueeSet ? "start()" : "stop()";
}
@ -51,6 +57,7 @@ export default {
handler(val) {
this.options = val;
this.optionsData = val.data;
targetWidgetLinkageLogic(this); // -
this.setOptionsData();
},
deep: true
@ -63,8 +70,25 @@ export default {
},
methods: {
//
setOptionsData() {
setOptionsData(e, paramsConfig) {
const optionsData = this.optionsData; // or
//
optionsData.dynamicData = optionsData.dynamicData || {}; // dynamicData undefined
const myDynamicData = optionsData.dynamicData;
clearInterval(this.flagInter); //
if (
e &&
optionsData.dataType !== "staticData" &&
Object.keys(myDynamicData.contextData).length
) {
const keyArr = Object.keys(myDynamicData.contextData);
paramsConfig.forEach((conf) => {
if (keyArr.includes(conf.targetKey)) {
myDynamicData.contextData[conf.targetKey] = e[conf.originKey];
}
});
}
//
if (optionsData.dataType == "dynamicData") {
this.dynamicDataFn(optionsData.dynamicData, optionsData.refreshTime);
} else {};

@ -40,12 +40,15 @@
<script>
import vue from "vue";
import VueSuperSlide from "vue-superslide";
import { targetWidgetLinkageLogic } from "@/views/bigscreenDesigner/designer/linkageLogic";
vue.use(VueSuperSlide);
export default {
name: 'widgetTable',
components: {},
props: {
value: Object,
ispreview: Boolean
ispreview: Boolean,
},
data() {
return {
@ -64,7 +67,8 @@ export default {
list: [],
optionsSetUp: {},
optionsPosition: {},
optionsData: {}
optionsData: {},
flagInter: null,
};
},
computed: {
@ -80,6 +84,9 @@ export default {
background: this.optionsSetUp.tableBgColor
};
},
allComponentLinkage() {
return this.$store.state.designer.allComponentLinkage;
},
headerTableStlye() {
const headStyle = this.optionsSetUp;
return {
@ -122,12 +129,13 @@ export default {
this.optionsPosition = this.value.position;
this.optionsData = this.value.data;
this.initData();
targetWidgetLinkageLogic(this); // -
},
methods: {
initData() {
this.handlerRollFn();
this.handlerHead();
this.handlerData();
this.setOptionsData();
this.visConfig();
},
visConfig() {
@ -148,8 +156,25 @@ export default {
const head = this.optionsSetUp.dynamicAddTable;
this.header = head;
},
handlerData() {
setOptionsData(e, paramsConfig) {
const tableData = this.optionsData;
tableData.dynamicData = tableData.dynamicData || {}; // dynamicData undefined
const myDynamicData = tableData.dynamicData;
clearInterval(this.flagInter); //
if (
e &&
tableData.dataType !== "staticData" &&
Object.keys(myDynamicData.contextData).length
) {
const keyArr = Object.keys(myDynamicData.contextData);
paramsConfig.forEach((conf) => {
if (keyArr.includes(conf.targetKey)) {
myDynamicData.contextData[conf.targetKey] = e[conf.originKey];
}
});
}
tableData.dataType == "staticData"
? this.handlerStaticData(tableData.staticData)
: this.handlerDynamicData(tableData.dynamicData, tableData.refreshTime);

@ -7,8 +7,9 @@
<template>
<div class="text" :style="styleColor">{{ styleColor.text }}</div>
</template>
<script>
import {targetWidgetLinkageLogic} from "@/views/bigscreenDesigner/designer/linkageLogic";
export default {
name: "WidgetText",
components: {},
@ -19,7 +20,8 @@ export default {
data() {
return {
options: {},
optionsData: {}
optionsData: {},
flagInter: null,
};
},
computed: {
@ -43,7 +45,10 @@ export default {
right: this.transStyle.right + "px",
whiteSpace: this.transStyle.whiteSpace ? "pre-line": "normal"
};
}
},
allComponentLinkage() {
return this.$store.state.designer.allComponentLinkage;
},
},
watch: {
value: {
@ -58,12 +63,30 @@ export default {
mounted() {
this.options = this.value;
this.optionsData = this.value.data;
targetWidgetLinkageLogic(this); // -
this.setOptionsData();
},
methods: {
//
setOptionsData() {
setOptionsData(e, paramsConfig) {
const optionsData = this.optionsData; // or
//
optionsData.dynamicData = optionsData.dynamicData || {}; // dynamicData undefined
const myDynamicData = optionsData.dynamicData;
clearInterval(this.flagInter); //
if (
e &&
optionsData.dataType !== "staticData" &&
Object.keys(myDynamicData.contextData).length
) {
const keyArr = Object.keys(myDynamicData.contextData);
paramsConfig.forEach((conf) => {
if (keyArr.includes(conf.targetKey)) {
myDynamicData.contextData[conf.targetKey] = e[conf.originKey];
}
});
}
//
if (optionsData.dataType == "dynamicData") {
this.dynamicDataFn(optionsData.dynamicData, optionsData.refreshTime);
} else {};

Loading…
Cancel
Save