Commit 5c7db1f7 authored by Jenny's avatar Jenny

feat: 文本组件支持动态数据和传参

parent ccbda6f0
......@@ -3,31 +3,33 @@
<p
:class="[elementInfo.marquee.isOpen ? 'merquee-txt' : '' ]"
:style="{
'font-size':`${elementInfo.option.title.textStyle.fontSize}px`,
'color': elementInfo.option.title.textStyle.color,
'font-weight': elementInfo.option.title.textStyle.fontWeight,
'text-align': elementInfo.option.title.left,
'animation-duration':`${elementInfo.marquee.speed ? elementInfo.marquee.speed : defaultSpeed}s`
}"
'font-size':`${elementInfo.option.title.textStyle.fontSize}px`,
'color': elementInfo.option.title.textStyle.color,
'font-weight': elementInfo.option.title.textStyle.fontWeight,
'text-align': elementInfo.option.title.left,
'animation-duration':`${elementInfo.marquee.speed ? elementInfo.marquee.speed : defaultSpeed}s`
}"
>
{{elementInfo.option.title.text}}
{{ text }}
</p>
</view>
</template>
<script>
import echartElementData from '@/mixins/echartElementData.js'
export default {
name:"BasicText",
props: {
elementInfo: {
type: Object,
required: true
}
},
mixins: [echartElementData],
data() {
return {
defaultSpeed: 5
defaultSpeed: 5,
text: ''
};
},
methods: {
initChart() {
this.text = this.elementData.dataList.text || this.elementInfo.option.title.text
}
}
}
</script>
......
......@@ -55,7 +55,7 @@
/**
* 改变选项卡的值
*/
tabsValueChange() {
tabsValueChange() {
const { index, paramName, data } = this.elementInfo.child
if(this.elementInfo.child.type === 'param') {
uni.$emit('handleLinkParams', { index, paramName, value: this.tabsValue })
......
......@@ -159,11 +159,15 @@
handleValueChange(index, paramName, value) {
if(index.length && paramName && value) {
this.reportData.map(item => {
if(index.includes(item.id) && item.data.dataType === 'dynamic') {
const flag = index.includes(item.id)
if(flag && item.type === 'BasicText' && item.data.dataType === 'static') {
this.$set(item.data.dataList, 'text', value)
}
if(flag && item.data.dataType === 'dynamic') {
if(!item.data.dataFormatter) item.data.dataFormatter = {}
this.$set(item.data.dataFormatter, paramName, value)
}
if(index.includes(item.id) && item.data.dataType === 'dataSet') {
if(flag && item.data.dataType === 'dataSet') {
if(!item.data.dataSetInfo.queryFormatter) item.data.dataSetInfo.queryFormatter = {}
this.$set(item.data.dataSetInfo.queryFormatter, paramName, value)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment