原因:
窗口大小改变会触发canvas的重绘(至于为啥是恢复成第一次,这个暂时没深入了解)
解决办法:
1.网上的做法是remove掉canvas元素,然后重新添加
2.使用charts.js中的方法xxx.destroy()去卸载(本人亲测)
function _renderChart(dom, option) {
var defalutOption = {
"type": "line",
"data": {
"labels": [],
"datasets": [{
"label": "阅读数",
"data": [],
"fill": false,
"borderColor": "#409eff",
"backgroundColor": "#409eff",
"lineTension": 0.1
}]
},
"options": {}
}
defalutOption = $.extend(true, defalutOption, option);
return new Chart(dom, defalutOption);
}
var myChart4 = document.getElementById("myChart4").getContext("2d");
Chart4&&Chart4.destroy();
Chart4 = _renderChart(myChart4, {
"data": {
"labels": label,
"datasets": [{
"label": '总评论数',
"data": commentNum,
}]
}
})