国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

解決echarts vue數(shù)據(jù)更新,視圖不更新問題(echarts嵌在vue彈框中)

瀏覽:18日期:2023-01-03 08:57:00

1.問題描述:在echarts彈框中嵌入echarts,在頁面數(shù)據(jù)改變時(shí),echarts視圖不更新;

解決echarts vue數(shù)據(jù)更新,視圖不更新問題(echarts嵌在vue彈框中)

2.解決辦法:

數(shù)據(jù)更新時(shí)以為drawLine()函數(shù)在updated()里面執(zhí)行(這種情況之前碰到過),后來發(fā)現(xiàn)熱更新之后視圖更新了,所以跟周期函數(shù)沒有關(guān)系;參考了一下網(wǎng)上的一些資料,發(fā)現(xiàn)可以用vue中的watch()函數(shù)來監(jiān)聽數(shù)據(jù)的更新,一旦數(shù)據(jù)更新了,那么就在watch()函數(shù)中調(diào)用drawLine()函數(shù),發(fā)現(xiàn)視圖更新了,完美解決。

解決echarts vue數(shù)據(jù)更新,視圖不更新問題(echarts嵌在vue彈框中)

補(bǔ)充知識(shí):vue echarts line動(dòng)態(tài)刷新數(shù)據(jù)組件

我就廢話不多說了,大家還是直接看代碼吧~

<template> <div class='echartLine-wrap'> <div class='echartLine-title'> <img src='http://www.cgvv.com.cn/bcjs/@/assets/icon.png' alt /> <div class='text'> <div>{{echartData.title}}</div> <div>{{echartData.title2}}</div> <div>{{echartData.title3}}</div> </div> </div> <div ref='lineDom' id='myChart'></div> </div></template><script>export default { name: 'echartLine', props: { echartData: { type: Object, default: () => {} } }, data() { return { img: require('../assets/time_bj.png') }; }, mounted() { setTimeout(() => { this.ButtomDrawLine(); }, 500); }, created() {}, methods: { ButtomDrawLine() { let t = this; let myChart = this.$echarts.init(this.$refs.lineDom); myChart.setOption({ title: { text: '' }, tooltip: { trigger: 'axis', borderRadius: 8, //邊框圓角 backgroundColor: 'rgba(51,204,204,0)', //背景顏色(此時(shí)為默認(rèn)色) formatter: function(params) { let value = params[0].value; let name = params[0].name; let html = `<div class=’line-html’> <span><span class=’active’ style='background: ${t.echartData.itemStyle.color}'></span>${value}</span><span>${t.echartData.title3}</span><span></span><span>${name}</span> </div> `; return html; }, textStyle: { color: '#ffff', align: 'center', fontSize: 18 } }, // legend: { // left: ’right’, // textStyle: {//圖例文字的樣式 // color: ’#ffffff’, // fontSize: 14 // }, // show: true, // data: [ // { // name: ’審方數(shù)’, // }, // { // name: ’處方數(shù)’, // }, // { // name: ’會(huì)員數(shù)’ // }, // { // name: ’含麻登記’, // } // ] // }, /*toolbox: { feature: { dataView: {readOnly: false}, restore: {}, saveAsImage: {} }, iconStyle:{ normal:{color:’white’,//設(shè)置顏色 } } },*/ xAxis: [ { boundaryGap: true, type: 'category', axisLine: { // x軸的顏色和寬度 lineStyle: {color: '#0070C6' } }, axisLabel: { show: true, textStyle: {color: '#fff' } }, offset: 0, nameTextStyle: { align: 'right' }, axisTick: { alignWithLabel: true }, data: t.echartData.XData } ], yAxis: [ { type: 'value', axisLabel: { show: true, textStyle: {color: '#fff' } }, axisLine: { lineStyle: {color: '#0070C6' } }, // 控制網(wǎng)格線是否顯示 splitLine: { show: false }, min: 0, splitNumber: 5, boundaryGap: [0.2, 0.2], data: [0, 50, 100, 150] } ], grid: { top: '3.5%', left: '0', right: '0', bottom: '0', containLabel: true }, series: [ { name: t.echartData.title, type: 'line', // smooth: true, showSymbol: true, symbolSize: 4, // 拐點(diǎn)圖形大小 cursor: 'pointer', areaStyle: { normal: {color: new t.$echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: t.echartData.areaStyleColor.fromColor }, { offset: 0.4, color: t.echartData.areaStyleColor.toColor } // { // offset: 1, // color: 'rgba(63,227,236,0.00)' // }])// [’rgba(63,227,236,0.3)’], } }, itemStyle: { color: [t.echartData.itemStyle.color] }, data: t.echartData.YData, icon: 'image://http://file.dyzhkj.cn/null/1562315548784PyZcsO處方數(shù).png' } // { // name: ’處方數(shù)’, // type: ’line’, // smooth: true, // symbolSize: 1, // 拐點(diǎn)圖形大小 // areaStyle: { // color: new t.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{ // offset: 0, // color: ’rgba(82,206,86,0.8)’ // }, { // offset: .4, // color: ’rgba(82,206,86,0.3)’ // }, { // offset: 1, // color: ’rgba(82,206,86,0.00)’ // }]) // // [’rgba(82,206,86,0.3)’], // }, // itemStyle: { // normal: { // color: [’#52CE56’], // } // }, // data: [10, 5, 15, 5, 15, 20, 15, 20, 15, 5, 15, 10] // }, // { // name: ’會(huì)員數(shù)’, // type: ’line’, // smooth: true, // symbolSize: 1, // 拐點(diǎn)圖形大小 // areaStyle: { // color: new t.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{ // offset: 0, // color: ’rgba(251,98,100,0.8)’ // }, { // offset: .4, // color: ’rgba(251,98,100,0.3)’ // }, { // offset: 1, // color: ’rgba(251,98,100,0.00)’ // }]) // // [’rgba(251,98,100,0.3)’], // }, // itemStyle: { // normal: { // color: [’#FB6264’], // } // }, // data: [35, 45, 65, 25, 65, 44, 15, 40, 35, 46, 50, 25] // }, // { // name: ’含麻登記’, // type: ’bar’, // itemStyle: { // normal: { // color: new t.$echarts.graphic.LinearGradient(0, 0, 0, 1, [{ // offset: 0, // color: ’rgba(231,233,65,0.8)’ // }, { // offset: .4, // color: ’rgba(231,233,65,0.3)’ // }, { // offset: 1, // color: ’rgba(231,233,65,0.00)’ // }]), // // [’rgba(231,233,65,0.5)’], // barBorderColor: ’#E7E941’, // 柱條邊線 // barBorderRadius: 0,// 柱條邊線圓角,單位px,默認(rèn)為0 // barBorderWidth: 1, // 柱條邊線線寬,單位px,默認(rèn)為1 // } // }, // barWidth: 15,//柱圖寬度 // data: [5, 7, 3, 7, 5, 4, 5, 6, 4, 7, 5, 8] // } ] }); } }};</script><style lang='less'>.line-html { width: 83.5px; height: 38px; text-align: center; background: url('../assets/line_btn_bj.png') no-repeat; background-size: 83.5px 38px; line-height: 42px; box-sizing: border-box; position: relative; font-size: 9px; padding-right: 2px; box-sizing: border-box; .active { width: 5px; height: 5px; border-radius: 50%; background: #fff; display: inline-block; margin-left: 3px; margin-bottom: 1.5px; box-sizing: border-box; } > span:nth-child(3) { background: url('../assets/time_bj.png') no-repeat; background-size: 38.5px 14px; position: absolute; top: -5px; left: 23px; right: 0; bottom: 0; box-sizing: border-box; } > span:nth-child(4) { position: absolute; top: -19px; left: 2px; right: 2px; bottom: 0; font-size: 8px; box-sizing: border-box; }}</style><style scoped lang='less'>.echartLine-wrap { width: 100%; height: 100%; .echartLine-title { width: 100%; color: #fff; display: flex; flex-direction: row; justify-content: start; align-items: center; padding-bottom: 13px; > img { width: 7.5px; height: 14px; margin-right: 8.5px; box-sizing: border-box; } > .text { text-align: left; display: flex; flex-direction: row; justify-content: start; font-size: 12px; line-height: 1; align-items: baseline; > div:nth-child(2) { font-size: 15px; margin: 0 5px 0 10px; font-weight: bold; box-sizing: border-box; } } } #myChart { width: 100%; height: 165px; }}</style>

調(diào)用

//html <echartLine :echartData='echartData' ref='echartData1' />//index.js echartData: { title: '溶氧', title2: 3, title3: '毫克/升', XData: [1,2,3,4,5,6,7,8,9], YData: [12,34,56,66,65,77,12,11,33,44], areaStyleColor: { fromColor: '#1AB8F9', toColor: 'rgba(63,227,236,0.1)' }, itemStyle: { color: '#1AB8F9' } }

以上這篇解決echarts vue數(shù)據(jù)更新,視圖不更新問題(echarts嵌在vue彈框中)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
主站蜘蛛池模板: 国产精品永久免费视频观看 | 久草视频在线看 | 久久国产视屏 | 欧美亚洲综合另类在线观看 | 亚洲欧洲视频在线 | 在线视频观看免费视频18 | 精品久久久久久久久久中文字幕 | 国产在线观看网址你懂得 | 国产91丝袜在线播放九色 | 美女张腿男人桶免费视频 | 国产精品资源手机在线播放 | 交视频在线观看国产网站 | 亚洲毛片在线看 | 九九99九九视频在线观看 | 九九色综合 | www亚洲视频 | 久久精品一区二区三区日韩 | 久久爱噜噜噜噜久久久网 | 国产美女精品视频 | 多人伦精品一区二区三区视频 | 国内精品一区二区三区最新 | 亚洲国产一区在线精选 | 亲子乱子伦xxxxxinin | 高清在线一区二区三区亚洲综合 | 国产精品久久久久国产精品三级 | 国产精品一区高清在线观看 | 久久99精品久久久久久 | 久久精品视频播放 | 欧美精品国产制服第一页 | 黄影院 | 欧美精品一二三区 | www.99精品| 精品亚洲成a人片在线观看 精品亚洲成a人在线播放 | 日韩免费一区二区三区 | 特黄大片aaaaa毛片 | 日韩在线成人 | 亚洲国产高清人在线 | 一色屋精品亚洲香蕉网站 | 成人区精品一区二区不卡亚洲 | 91精品成人免费国产片 | 狠狠色综合久久丁香婷婷 |