欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue中echarts視圖不更新問題及解決

 更新時(shí)間:2023年07月01日 09:41:27   作者:嶼-·  
這篇文章主要介紹了vue中echarts視圖不更新問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

vue中echarts視圖不更新

最近寫了一個(gè)可視化,遇到最多的問題就是, 封裝成組件 接口返回來(lái) 有數(shù)據(jù) , 或者切換數(shù)據(jù)有數(shù)據(jù) ,但可視化視圖不更新

問題就是數(shù)據(jù)只在第一次更新了

在這里插入圖片描述

我解決的方法有兩個(gè):

  • v-if判斷有數(shù)據(jù)就顯示
  • 用watch監(jiān)聽

1、直接在組件里判斷有數(shù)據(jù)就可

在這里插入圖片描述

2、在組件里監(jiān)聽數(shù)據(jù)有變化 手動(dòng)賦值

在這里插入圖片描述

總結(jié)下來(lái)就是 監(jiān)聽是真香 后來(lái)遇到的很多問題都是用監(jiān)聽解決的

vue echarts視圖更新緩慢問題

項(xiàng)目中使用echarts畫折線圖顯示設(shè)備上傳的數(shù)據(jù)。

出現(xiàn)bug

1.做條件賽選等操作后需要請(qǐng)求接口從新畫圖,由于線的數(shù)量等會(huì)有變化出現(xiàn)了保留上一次畫圖的折線。

解決辦法:使用setOption試添加第二個(gè)參數(shù)為true

this.myEcharts.setOption(this.chartOption, true)

2.折線圖有畫警示線markLine,要求可以手動(dòng)隱藏顯示該警示線

原本實(shí)現(xiàn)代碼:

 		// 警示線開關(guān)
        lgkeysw() {
            this.alarmLine = !this.alarmLine
            if (!this.alarmLine) {
                this.chartOption.series.forEach((item) => {
                    item.markLine.label.show = false
                    item.markLine.lineStyle.opacity = 0
                })
            } else {
                this.chartOption.series.forEach((item) => {
                    item.markLine.label.show = true
                    item.markLine.lineStyle.opacity = 1
                })
            }
            this.myEcharts.setOption(this.chartOption, true)
        },

后因數(shù)據(jù)量過大,使用setOption將全部折線圖重繪而導(dǎo)致隱藏或顯示markLine的時(shí)間變長(zhǎng)(甚至需要十幾二十秒的時(shí)間),優(yōu)化代碼實(shí)現(xiàn)只修改需要更新的視圖,其他部分不變

// 報(bào)警線開關(guān) LGKEYSW
        lgkeysw(showAlarmBtn) {
            if (!this.alarmBtn) {
                return false
            }
            this.alarmLine = !showAlarmBtn
            let series = []
            if (!this.alarmLine) {
                this.chartOption.series.forEach((item) => {
                    series.push({
                        markLine: {
                            label: {
                                show: false
                            },
                            lineStyle: {
                                opacity: 0
                            }
                        }
                    })
                })
            } else {
                this.chartOption.series.forEach((item) => {
                    series.push({
                        markLine: {
                            label: {
                                show: true
                            },
                            lineStyle: {
                                opacity: 1
                            }
                        }
                    })
                })
            }
            this.myEcharts.setOption(
                {
                    series: series
                },
                { replaceMerge: 'series' }
            )
        },

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue本地構(gòu)建熱更新卡頓的問題“75?advanced?module?optimization”完美解決方案

    vue本地構(gòu)建熱更新卡頓的問題“75?advanced?module?optimization”完美解決方案

    這篇文章主要介紹了vue本地構(gòu)建熱更新卡頓的問題“75?advanced?module?optimization”解決方案,每次熱更新都會(huì)卡在?"75?advanced?module?optimization"?的地方不動(dòng)了,如何解決這個(gè)問題呢,下面小編給大家?guī)?lái)了解決方案,需要的朋友可以參考下
    2022-08-08
  • mpvue中使用flyjs全局?jǐn)r截的實(shí)現(xiàn)代碼

    mpvue中使用flyjs全局?jǐn)r截的實(shí)現(xiàn)代碼

    這篇文章主要介紹了mpvue中使用flyjs全局?jǐn)r截的實(shí)現(xiàn)代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2018-09-09
  • vue動(dòng)態(tài)組件之:is在組件中的使用場(chǎng)景

    vue動(dòng)態(tài)組件之:is在組件中的使用場(chǎng)景

    這篇文章主要介紹了vue動(dòng)態(tài)組件之:is在組件中的使用場(chǎng)景,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • 詳解vue?cli中如何使用自定義的組件

    詳解vue?cli中如何使用自定義的組件

    Vue?CLI是一個(gè)強(qiáng)大的開發(fā)工具,可用于快速搭建Vue.js項(xiàng)目,在Vue?CLI中使用自定義組件是構(gòu)建交互式和模塊化Web應(yīng)用的重要一環(huán),下面我們就來(lái)看看vue?cli中如何使用自定義的組件吧
    2023-11-11
  • 關(guān)于element Drawer抽屜的使用

    關(guān)于element Drawer抽屜的使用

    這篇文章主要介紹了關(guān)于element Drawer抽屜的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 教你在vue項(xiàng)目中使用svg圖標(biāo)的方法

    教你在vue項(xiàng)目中使用svg圖標(biāo)的方法

    本文給大家介紹了在vue項(xiàng)目中使用svg圖標(biāo)的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-04-04
  • Vue中使用a標(biāo)簽下載靜態(tài)資源文件(如excel、pdf等)純前端操作方法

    Vue中使用a標(biāo)簽下載靜態(tài)資源文件(如excel、pdf等)純前端操作方法

    這篇文章主要介紹了Vue中使用a標(biāo)簽下載靜態(tài)資源文件(如excel、pdf等)純前端操作方法的相關(guān)資料,需要的朋友可以參考下
    2025-02-02
  • vue搜索高亮popsearch組件的實(shí)現(xiàn)示例

    vue搜索高亮popsearch組件的實(shí)現(xiàn)示例

    有時(shí)候給頁(yè)面內(nèi)容添加一個(gè)關(guān)鍵詞搜索功能,如果搜索結(jié)果能夠像瀏覽器搜索一樣高亮顯示,那找起來(lái)就會(huì)很明顯體驗(yàn)會(huì)好很多,本文就來(lái)介紹一下vue搜索高亮popsearch組件的實(shí)現(xiàn)示例,感興趣的可以了解一下
    2023-09-09
  • vue中如何使用math.js

    vue中如何使用math.js

    這篇文章主要介紹了vue中如何使用math.js問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue-cli3.0如何使用CDN區(qū)分開發(fā)、生產(chǎn)、預(yù)發(fā)布環(huán)境

    vue-cli3.0如何使用CDN區(qū)分開發(fā)、生產(chǎn)、預(yù)發(fā)布環(huán)境

    這篇文章主要介紹了vue-cli3.0如何使用CDN區(qū)分開發(fā)、生產(chǎn)、預(yù)發(fā)布環(huán)境,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2018-11-11

最新評(píng)論