javascript - 使用数组索引 0 更新 chart.js 不起作用
问题描述
我有一组图表数据对象。我通过传递数组的索引并从对象中提取数据来更新图表数据。这对所有索引都非常有效,除了0
.
初始化图表时,我加载了0
索引并且图表也可以正常工作,所以我知道这不是该特定索引的数据结构问题。0
在使用索引调用图表上的更新函数时,我没有收到任何错误。
这是一个代码笔,显示它不适用于索引 0。
为什么它不更新0
索引的图表?
解决方案
改变:
window.myChart = new Chart(ctx, chartData[curIndex]);
至
window.myChart = new Chart(ctx, JSON.parse(JSON.stringify(chartData[curIndex])));
原因是您需要克隆对象,否则 myChart 与 chartData[0] 相同,当您单击 1 或 2 时,它会覆盖 0。
这部分代码克隆了对象 JSON.parse(JSON.stringify(chartData[curIndex]))
推荐阅读
- python - 如何处理/忽略 json 文件中缺少的键?
- python - 调整图像大小并更改为灰度
- javascript - odoo javascript如何覆盖网站菜单?
- saucelabs - 无法通过 saucelabs 隧道访问 localhost 中的应用程序
- python - 如何修复 - ArrowInvalid: ("Could not convert (x, y) with type tuple)?
- css - Bootstrap 中我自己的自定义 CSS 的问题
- javascript - 打印时 iframe 内的分页符
- python - 如何通过 PyQGIS (3.x) 添加直方图并设置其位置、颜色等?
- python - 在使用python执行期间多次将请求的响应写入json文件
- php - 将 CodeIgniter 1.7.2 升级到 3.1.6 最有效的方法