1.echarts数据变了但是视图不重新渲染

新建Chart.vue文件

<template>

 <p :id="id" :style="style"></p>

</template>

<script>

export default {

 name: "Chart",

 data() {

  return {

   //echarts实例

   chart: ""

  };

 },

 props: {

  //父组件需要传递的参数:id,width,height,option

  id: {

   type: String

  },

  width: {

   type: String,

   default: "100%"

  },

  height: {

   type: String,

   default: "300px"

  },

  option: {

   type: Object,

   //Object类型的prop值一定要用函数return出来,不然会报错。原理和data是一样的,

   //使用闭包保证一个vue实例拥有自己的一份props

   default() {

    return {

     title: {

      text: "vue-Echarts"

     },

     legend: {

      data: ["销量"]

     },

     xAxis: {

      data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子","tuoxie"]

     },

     series: [

      {

       name: "销量",

       type: "line",

       data: [5, 20, 36, 10, 10, 70]

      }

     ]

    };

   }

  }

 },

 computed: {

  style() {

   return {

    height: this.height,

    width: this.width

   };

  }

 },

 mounted() {

  this.init();

 },

 methods: {

  init() {

   this.chart = this.$echarts.init(document.getElementById(this.id));

   this.chart.setOption(this.option);

  }

 }

};

</script>

新建App.vue文件,chart在App.vue中简单渲染出来

<template>

 <p id="app">

  <Chart id="test"/>

 </p>

</template>

<script>

import Chart from "./components/Chart";

export default {

 name: "App",

 data() {},

 components: {

  Chart

 }

}

</script>

支持数据自动刷新

//在Chart.vue中加入watch

 watch: {

  //观察option的变化

  option: {

   handler(newVal, oldVal) {

    if (this.chart) {

     if (newVal) {

      this.chart.setOption(newVal);

     } else {

      this.chart.setOption(oldVal);

     }

    } else {

      this.init();

    }

   },

   deep: true //对象内部属性的监听,关键。

  }

 }

2.重新渲染了前后数据会重叠渲染的问题

chart.setOption(option, notMerge, lazyUpdate);将notMerge设置为true就可以echarts画布删除历史数据重新渲染数据

notMerge是可选项,是否不跟之前设置的option进行合并,默认为false,即合并。

echarts数据变了不重新渲染,以及重新渲染了前后数据会重叠渲染的问题的更多相关文章

  1. echarts异步数据加载(在下拉框选择事件中异步更新数据)

    接触echarts 大半年了,从不会到熟练也做过不少的图表,隔了一段时间没使用这玩意,好多东西真心容易忘了.在接触echarts这期间也没有总结什么东西,今天我就来总结一下如何在echart中异步加载 ...

  2. echarts 自定义配置带单位的 tooltip 提示框方法 和 圆环数据 tooltip 过长超出屏幕

    -------tip1-------- 在 tooltip  里边配置:拼接字符串: tooltip : { trigger: 'axis', formatter:function(params) { ...

  3. FMOD变声如何捕获并存储处理音效之后的数据

    类似AVAudioEngine的功能,一个Engine可以将N个connect连接(串联和并联)在一起,这样来实现多个输入源,多层处理效果的混合输出.实现这个所需功能也是通过这样的方案来实现的.也就是 ...

  4. 高性能Web动画和渲染原理系列(2)——渲染管线和CPU渲染

    目录 一. 高性能动画 二. 像素渲染管线 基本渲染流程 回流和重绘 三. 旧软件渲染 渲染对象(RenderObject) 渲染层(RenderLayer) 四. 从canvas体会分层优势 不分层 ...

  5. 剖析虚幻渲染体系(14)- 延展篇:现代渲染引擎演变史Part 1(萌芽期)

    目录 14.1 本篇概述 14.1.1 游戏引擎简介 14.1.2 游戏引擎模块 14.1.3 游戏引擎列表 14.1.3.1 Unreal Engine 14.1.3.2 Unity 14.1.3. ...

  6. (数据科学学习手札74)基于geopandas的空间数据分析——数据结构篇

    本文对应代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 geopandas是建立在GEOS.GDAL.P ...

  7. HR数据抽取:通过 Read Master Data 转换规则读取时间相关主属性数据

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  8. 数据抓取的艺术(一):Selenium+Phantomjs数据抓取环境配置

     数据抓取的艺术(一):Selenium+Phantomjs数据抓取环境配置 2013-05-15 15:08:14 分类: Python/Ruby     数据抓取是一门艺术,和其他软件不同,世界上 ...

  9. Python 数据分析(二 本实验将学习利用 Python 数据聚合与分组运算,时间序列,金融与经济数据应用等相关知识

    Python 数据分析(二) 本实验将学习利用 Python 数据聚合与分组运算,时间序列,金融与经济数据应用等相关知识 第1节 groupby 技术 第2节 数据聚合 第3节 分组级运算和转换 第4 ...

随机推荐

  1. Java学习之集合(List接口)

    List特有的常见方法:有一个共性特点:都可以操作角标 1.添加  void add(int index, E element); void addAll(int index, collection& ...

  2. Linux用户空间内存区域的匿名映射

    1 在调用mmap系统调用时,可以指定的标志(flag)参数: 1: #define MAP_SHARED 0x01 /* Share changes */ 2: #define MAP_PRIVAT ...

  3. Java原始数据类型

    Java定义了八种基本类型的数据:byte,short,int,long,char,float,double和boolean. 基本类型通常被称为简单类型.这些基本类型可以分为四组: 整数 - 包括: ...

  4. python中字符串输出格式

    print输入格式总结 通过使用ljust(),center(),rjust()函数来实现输入字符串的左右对齐,居中,右对齐等操作; 方法一:(函数不带参数,则默认以空格填充,注意:文字与空格总字符数 ...

  5. dp思维

    题目传输门 题意:有n个房间,m个诅咒,每个房间有一个数值,刚开始有一个初始值,每次进入一个房间可以选择消除诅咒或者不消除,消除诅咒只能顺序消除,消除诅咒就是拿初始值和房间的数值做运算,求最后最大的数 ...

  6. Java SE(2)

    1.this的两种用法:(1)当成员变量和局部变量重名是,可以用关键字this来区分 .this代表对象,代表的是this所在函数所属对象的引用(哪个对象调用了this所在的函数,this就代表哪个对 ...

  7. vue app外卖(5) 使用swiper 进行图片轮播

    1.查看swiper 文档 https://www.swiper.com.cn/usage/index.html 2. 下载 npm install --save swiper 3.在页面引入 imp ...

  8. Mac电脑如何转换图片格式?ImageWell for Mac转换图片格式教程

    想用Mac电脑转换图片格式?我想你可以借助ImageWell for Mac软件!ImageWell是一款简单好用的的图像处理工具,具有显示,编辑,处理,保存等功能.下面小编来为大家演示在Mac电脑上 ...

  9. [原创]Delphi 文件函数:ForceDirectories() 函数和 CreateDir函数

    引用单元:SysUtils function ForceDirectories(Dir: string): Boolean;    //创建多级目录  父目录不必存在   (Force 有暴力.强制的 ...

  10. 2019.7.3模拟 光影交错(穷举+概率dp)

    题目大意: 每一轮有pl的概率得到正面的牌,pd的概率得到负面的牌,1-pl-pd的概率得到无属性牌. 每一轮过后,都有p的概率结束游戏,1-p的概率开始下一轮. 问期望有多少轮后正面的牌数严格大于负 ...