在vue中,数据更改了,但是echarts视图未更新
- 使用的框架为vue和elementUI
- 涉及websock
从websock拿到的数据渲染到页面的时候发现echarts视图未更新,部分代码如下;
在网上查了一下,说有可能跟for循环有关:
vue 不能检测以下变动的数组:1.当你利用索引直接设置一个项时;2.当你修改数组的长度时;
我的解决办法:this.$set()或splice()方法,可以引起视图的更新;以为问题解决了,然并卵,只能说echarts贼坑;找了半天,发现是echarts组件结构的问题,结构必须要像这样写,如下图:
发现问题解决了,从websock拿到的实时数据可以渲染到页面上面,echarts视图也在实时更新;问题解决了。