版本
"vue": "^3.2.26",
"echarts": "^5.3.2"
在使用ref缓存echarts实例时,除饼图外resize()时会提示报错
报错写法以及报错提示
解决方案
使用 shallowRef 替代 ref,这样 Proxy 不会应用到 ECharts 实例底下的各个属性上,因为shallowRef只针对数据最外层响应
shallowRef 为 ref 的浅层作用式,换句话说就是它只会对定义在对象第一层的属性 才是响应式的 深层次的数据将不再具有响应式的功能
果然换成浅层作用式之后,没有再出现过类似问题
后面查阅了echarts社区的说明之后,也发现了类似的问题,据官方回答使用 ref 缓存这样做可能会将 Proxy 应用到了整个 ECharts 实例上,不太建议把整个 ECharts 实例这样的对象放到 ref 里,比较容易影响到实例底层的运行
感兴趣的大家可以访问社区查看:github.com/apache/echa…