最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue檢測屏幕變化來改變不同的charts樣式實例

 更新時間:2020年10月26日 09:15:49   作者:GllWyz  
這篇文章主要介紹了Vue檢測屏幕變化來改變不同的charts樣式實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

css中我們經(jīng)常會通過媒體查詢就可以完成對不同的屏幕展現(xiàn)不同的樣式

在js中我們也可以通過檢測屏幕的變化來展現(xiàn)不同的樣式

在我的實例中:因為第一次打開也不知道到底是應(yīng)該展示哪一個屏幕,所以會進行先判斷一次,之后用addEventListener來是實現(xiàn)功能,暫時是通過這種方式實現(xiàn)的,以后有更好的方法再更新。。。

 mounted() {
  this.checkScreen()
 },
methods: {
 // 屏幕檢測變化
  checkScreen() {
   var _this = this
   if (document.body.clientWidth > 500) {
     _this.echartsOne()
   } else {
     _this.echartsTwoPhone()
   }
   window.addEventListener('resize', () => {
     if (document.body.clientWidth < 500) {
      _this.echartsTwoPhone()
     } else {
      _this.echartsOne()
     }
   })
  }
}

補充知識:vue中處理echarts因v-if切換后圖形顯示異常+實現(xiàn)echarts監(jiān)聽窗口變化而改變大小

一、處理echarts因v-if切換后圖形顯示異常

有時候我們需要在一個頁面中使用v-if來顯示不同的兩個圖表。

視覺效果上好像是從一個頁面點擊鏈接跳轉(zhuǎn)到另一個頁面,但其實原理是通過銷毀和重建兩個不同dom容器來實現(xiàn)這個效果。

可能會出現(xiàn)的問題:

在切換到另一個圖表顯示的時候,改變了窗口寬度高度,那么點擊返回按鈕時看到原先的echarts圖形就會有一部分消失顯示不完整了。

解決辦法:

我們需要在返回這個按鈕上加個定時器延遲,來主動觸發(fā)窗口發(fā)生變化(前提是代碼也有做監(jiān)聽窗口變化改變圖形大小的操作,下面標題二會講解)。這樣圖形能正確自動渲染變化一次。

methods: {
 // 關(guān)閉監(jiān)控ip執(zhí)行詳情頁
  closePerfExe () {   
   this.isShowPerfExe = false // 控制當前dom容器的顯示
   // 當在監(jiān)控ip詳情頁點擊回性能分析頁的時候,加個延遲主動觸發(fā)窗口變化,這樣窗口改變性能分析頁就不會發(fā)生圖表顯示不完整的情況了
   // 這里的代碼是關(guān)鍵?。?!
   setTimeout( () => {
    let triggerResize = new Event('resize')
    window.dispatchEvent(triggerResize)
   },0)
  }
}

二、vue實現(xiàn)echarts監(jiān)聽窗口變化而改變大小

監(jiān)聽窗口的變化,echarts圖形大小跟著變化。

注意:在組件銷毀時記得也要移除監(jiān)聽。

data () {
 return {
 myChartPerformance: '', // echarts的dom容器
 performanceOption: '' // echarts配置項option
 } 
 },
 mounted () {
  // 一般我為了防止出現(xiàn)一些切換問題,都是先清除echarts再初始化
    if(this.myChartPerformance){
     this.myChartPerformance.clear()
    }
    this.myChartPerformance = echarts.init(document.getElementById('myChartPerformance'))

  // 圖表數(shù)據(jù)配置
    this.performanceOption = {
    title: {
     text: chartOptions.titleName
    },
    tooltip: {
     trigger: 'axis'
    },
    //.........
    //.........
   }
   // 設(shè)置圖表數(shù)據(jù)配置
   this.myChartPerformance.setOption(this.performanceOption)
  // 監(jiān)聽窗口大小改變圖表大?。ㄏ纫瞥俦O(jiān)聽,防止出錯)
   window.removeEventListener('resize', this.resizePerformanceFun)
   window.addEventListener('resize', this.resizePerformanceFun)
 },
 beforeDestroy () {
  // 組件銷毀前移除監(jiān)聽
 window.removeEventListener('resize', this.resizePerformanceFun)
 },
 methods : {
 resizePerformanceFun () {
    if(this.myChartPerformance){
    // console.log('窗口改變了,重新渲染圖形')
    this.myChartPerformance.resize()
   }
  }
}

以上這篇Vue檢測屏幕變化來改變不同的charts樣式實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue2.0+SVG實現(xiàn)音樂播放圓形進度條組件

    vue2.0+SVG實現(xiàn)音樂播放圓形進度條組件

    這篇文章主要為大家詳細介紹了Vue2.0+SVG實現(xiàn)音樂播放圓形進度條組件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • Vue項目前端部署詳細步驟(nginx方式)

    Vue項目前端部署詳細步驟(nginx方式)

    Nginx(engine x)是一個高性能的HTTP和反向代理web服務(wù)器,是部署前端項目的首選,這篇文章主要給大家介紹了關(guān)于Vue項目前端部署(nginx方式)的相關(guān)資料,需要的朋友可以參考下
    2023-09-09
  • Vue Element前端應(yīng)用開發(fā)之echarts圖表

    Vue Element前端應(yīng)用開發(fā)之echarts圖表

    在我們做應(yīng)用系統(tǒng)的時候,往往都會涉及圖表的展示,綜合的圖表展示能夠給客戶帶來視覺的享受和數(shù)據(jù)直觀體驗,同時也是增強客戶認同感的舉措之一
    2021-05-05
  • 使用 vue.js 構(gòu)建大型單頁應(yīng)用

    使用 vue.js 構(gòu)建大型單頁應(yīng)用

    本文給大家詳細介紹了如何使用使用 vue.js腳手架工具vue-cli構(gòu)建大型單頁應(yīng)用的方法,非常的實用,有需要的小伙伴可以參考下
    2018-02-02
  • Vue實現(xiàn)預(yù)覽docx/xlsx/pdf等類型文件功能

    Vue實現(xiàn)預(yù)覽docx/xlsx/pdf等類型文件功能

    這篇文章主要介紹了如何在Vue中實現(xiàn)docx/xlsx/pdf等類型文件預(yù)覽功能,在實現(xiàn)過程中,需要注意文件的格式和轉(zhuǎn)換方式,以及插件和組件的使用方法和注意事項,需要的朋友可以參考下
    2023-05-05
  • Vue實現(xiàn)Echarts圖表寬高自適應(yīng)的實踐

    Vue實現(xiàn)Echarts圖表寬高自適應(yīng)的實踐

    本文主要介紹了Vue實現(xiàn)Echarts圖表寬高自適應(yīng)的實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Vue?項目性能優(yōu)化方案分享

    Vue?項目性能優(yōu)化方案分享

    本文是作者通過實際項目的優(yōu)化實踐進行總結(jié)而來,希望讀者讀完本文,有一定的啟發(fā)思考,從而對自己的項目進行優(yōu)化起到幫助
    2022-08-08
  • Vue打包后出現(xiàn)一些map文件的解決方法

    Vue打包后出現(xiàn)一些map文件的解決方法

    本篇文章主要介紹了Vue打包后出現(xiàn)一些map文件的解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • requirejs + vue 項目搭建詳解

    requirejs + vue 項目搭建詳解

    這篇文章主要介紹了requirejs + vue 項目搭建詳解,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 解決vue頁面刷新,數(shù)據(jù)丟失的問題

    解決vue頁面刷新,數(shù)據(jù)丟失的問題

    這篇文章主要介紹了解決vue頁面刷新,數(shù)據(jù)丟失的問題,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2020-11-11

最新評論

通江县| 宿州市| 荥经县| 穆棱市| 化德县| 长治市| 丹巴县| 新泰市| 衡水市| 南康市| 车险| 延庆县| 津市市| 娱乐| 益阳市| 二手房| 三亚市| 彝良县| 宣化县| 静安区| 新乡市| 和硕县| 连云港市| 互助| 武安市| 宝坻区| 德兴市| 太康县| 金乡县| 浦北县| 郑州市| 淮安市| 新闻| 宜良县| 太仆寺旗| 武城县| 普安县| 饶平县| 辰溪县| 唐河县| 乌兰察布市|