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

vue使用echarts基本原理以及報錯提示undefined(reading?init)的解決過程

 更新時間:2025年09月17日 09:01:21   作者:中芯12341  
Vue2使用ECharts時,因未全局注冊或錯誤引入導(dǎo)致TypeError報錯,解決方法為全局注冊,正確獲取DOM節(jié)點并設(shè)置寬高,通過生命周期或數(shù)據(jù)請求后調(diào)用getMain2方法初始化圖表,option對象需根據(jù)實際數(shù)據(jù)配置

vue使用echarts及報錯提示undefined(reading init)

在通常使用vue去編輯echarts圖的時候,對于echarts初學(xué)者去論壇搜索echats操作實現(xiàn)柱狀圖、折線圖、餅狀圖有很多博客都是基于一直怎么去“注冊”echarts給出的邏輯代碼,所以我們并不能一勞永逸的直接去cv復(fù)制我們需要的echarts,有的甚至不理解究竟為什么這樣寫。

今天我按照vue2的邏輯和結(jié)構(gòu)給大家說一下echarts的使用以及報錯的解決過程。

報錯如下:

Error in mounted hook: "TypeError: Cannot read properties of undefined (reading init )"

1、全局注冊echarts

// echarts

import * as echarts from 'echarts';

Vue.prototype.$echarts = echarts

這樣注冊就可以解決

Error in mounted hook: "TypeError: Cannot read properties of undefined (reading init )"  的問題

原因是有些博客很老當(dāng)然使用的echarts的引入方式也根據(jù)版本在不斷更新,所以我們并不能使用老的引入方式echarts(列入):(錯誤引入方式)import echarts from 'echarts'; 

2、編輯vue頁面echarts

html部分,需要注意的是我們不管怎么去寫echarts都不要忘記編輯width和height;

    <!-- 折線圖 -->
    <div id="main2" class="echarts" style="width:100%;height:300px;"></div>

js部分 ,通過觸發(fā)事件getmain2()來去調(diào)用echarts;

getmain2()可以掛在生命周期中或者你的項目請求數(shù)據(jù)請求完畢之后在進行這個方法引入就可以。

// echarts圖
    getmain2() {
      let myChart = this.$echarts.init(document.getElementById("main2"));
      let option = {
        xAxis: {
          type: "category",
          name: '年、月',
          data: this.echarttable.months,
        },
        legend: {},
        toolbox: { //工具欄
          show: true,
          feature: {
            mark: { show: true },
            dataView: { show: true, readOnly: false },
            magicType: { show: true, type: ["line", "bar"] },
            // restore: { show: true },
            saveAsImage: { show: true }
          }
        },
        tooltip: {
          trigger: "axis" //顯示當(dāng)前列的所有信息
        },
        yAxis: {
          type: "value",
          name: '通過率%',
          axisLabel: {
            formatter: '{value} %', // 設(shè)置縱坐標(biāo)顯示百分比形式
          },
        },
        series: [
          //數(shù)據(jù)   五條折線數(shù)據(jù)  line 折線
          {
            name: '??谑泄簿中阌⒎志?百分比)',
            data: this.echarttable.xiuying,
            type: "line"
          },
          {
            name: '??谑泄簿铸埲A分局(百分比)',
            data: this.echarttable.longhua,
            type: "line"
          },
          {
            name: '??谑泄簿置捞m分局(百分比)',
            data: this.echarttable.meilan,
            type: "line"
          },
          {
            name: '??谑泄簿汁偵椒志?百分比)',
            data: this.echarttable.qiongshan,
            type: "line"
          },
          {
            name: '??谑泄簿珠_發(fā)區(qū)分局(百分比)',
            data: this.echarttable.kaifaqu,
            type: "line"
          }
        ]
      };
      // 注冊echarts的option
      myChart.setOption(option);
    },

這里一定會萌新看不懂,這是怎么建立的關(guān)聯(lián)的呢???

1、首先我們通過獲取節(jié)點的方式獲取到html部分的id 是main2

let myChart = this.$echarts.init(document.getElementById("main2"));

這里其實也就是我們使用其他博客的人項目中的代碼后報錯的地方,主要就是因為我們在main上的引入方式不對;

2、注冊option

 // 注冊echarts的option
      myChart.setOption(option);

其實option這個對象里面才是我們實現(xiàn)echarts的根本,通過上面的步驟我們已經(jīng)把option和div標(biāo)簽深度綁定也就是說這里面填寫的js都會在div里面顯示我們要狀態(tài)

3、編寫option

let option = {
        內(nèi)容在上面
}

這就是整個echarts的步驟了,關(guān)于他的功能上述代碼

注意注意

可以直接cv,不過要更改橫縱坐標(biāo)的data換成已知的假數(shù)據(jù)才可以

相信如果這里你全部看完的話,你是一定會全面理解這個東西咋ivue上的使用方法,當(dāng)然為了防止即拿主意,上面代碼的data都是我們請求后端出的數(shù)據(jù),所以想要看效果還是需要進行數(shù)組編輯的,不過這不是很難,也是為了排除一部分cv的吧,畢竟分享一篇博客不是用來cv的是學(xué)習(xí)和記錄的過程,所以很感謝你能看到這里!

總結(jié)

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

相關(guān)文章

  • Vue2.0用戶權(quán)限控制解決方案

    Vue2.0用戶權(quán)限控制解決方案

    這篇文章主要介紹了Vue2.0用戶權(quán)限控制解決方法以及源碼說明,一起學(xué)習(xí)下。
    2017-11-11
  • 深入理解Vue的數(shù)據(jù)響應(yīng)式

    深入理解Vue的數(shù)據(jù)響應(yīng)式

    Vue.js的核心包括一套“響應(yīng)式系統(tǒng)”?!绊憫?yīng)式”,是指當(dāng)數(shù)據(jù)改變后,Vue會通知到使用該數(shù)據(jù)的代碼。例如,視圖渲染中使用了數(shù)據(jù),數(shù)據(jù)改變后,視圖也會自動更新。
    2021-05-05
  • vue項目如何刷新當(dāng)前頁面的方法

    vue項目如何刷新當(dāng)前頁面的方法

    這篇文章主要介紹了vue項目如何刷新當(dāng)前頁面的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • vue3.0封裝輪播圖組件的步驟

    vue3.0封裝輪播圖組件的步驟

    這篇文章主要介紹了vue3.0封裝輪播圖組件的步驟,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下
    2021-03-03
  • 超詳細的5個Shell腳本實例分享(值得收藏)

    超詳細的5個Shell腳本實例分享(值得收藏)

    這篇文章主要介紹了超詳細的5個Shell腳本實例分享(值得收藏),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • element-ui直接在表格中點擊單元格編輯

    element-ui直接在表格中點擊單元格編輯

    最近通過在網(wǎng)上查找資料,自己整合研究了一個可以直接在表格中操作數(shù)據(jù)的基于element-ui的前端模板。可以讓增改數(shù)據(jù)的操作顯得方便一點,感興趣的可以了解一下
    2021-12-12
  • Vue實現(xiàn)文件批量打包壓縮下載

    Vue實現(xiàn)文件批量打包壓縮下載

    這篇文章主要為大家詳細介紹了如何利用Vue實現(xiàn)文件批量打包壓縮下載功能,文中的實現(xiàn)步驟講解詳細,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-07-07
  • Vue 2.0 偵聽器 watch屬性代碼詳解

    Vue 2.0 偵聽器 watch屬性代碼詳解

    這篇文章主要介紹了Vue 2.0 偵聽器 watch屬性代碼詳解,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-06-06
  • Vue之Mixins(混入)的使用方法

    Vue之Mixins(混入)的使用方法

    這篇文章主要介紹了Vue之Mixins(混入)的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • vue實現(xiàn)div單選多選功能

    vue實現(xiàn)div單選多選功能

    這篇文章主要為大家詳細介紹了vue實現(xiàn)div單選多選功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07

最新評論