欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

echarts显示暂无数据

程序员文章站 2022-06-07 18:05:24
...

(注意自己是3之前还是之后的版本)
1、 初始化图表的位置、大小啥的

 <el-row :gutter="20">
        <el-col :span="12">
          <el-card>
            <div id="userBox" class="chart-box"></div>
          </el-card>
        </el-col>
   </el-row>

2、初始化数据
this.data = …(查询出来的结果)
3、判断是否有数据

if (this.data.length !== 0) {
          // 初始化图表
          this.chartUser = this.$echarts.init(document.getElementById('userBox'))
          this.chartUser.setOption(option)
          window.addEventListener('resize', () => {
            this.chartUser.resize()
          })
        } else {
        // 以下是暂无数据显示样式(样式根据本身需求进行调整)
          var html = '<div><sapn style="font-size: 18px;font-weight: bold;">参与用户数</sapn><span  style="position: absolute;top: 40%;margin-left: 10%;color:#868686; font-size: 20px;">暂无数据</span></div>'
          document.getElementById('userBox').innerHTML = html
          document.getElementById('userBox').removeAttribute('_echarts_instance_')
        }

其中很重要的一点就是 document.getElementById(‘userBox’).removeAttribute(‘echarts_instance’)
如果没有加入这一条的话,当你跳转暂无数据页面,则无法返回有数据的界面。
_echarts_instance_不能创建多个实例,所以需删除。