Javascript 如何为每次更新清除画布?

Javascript 如何为每次更新清除画布?,javascript,node.js,cordova,typescript,ionic-framework,Javascript,Node.js,Cordova,Typescript,Ionic Framework,我的第一个爱奥尼亚网络应用程序有问题。我应该做一些图表,所以我决定使用d3.js和tree.js。我增加了用不同类型的图表可视化数据的可能性。当我在同一个画布上绘制不同的图表时,问题就出现了,所以我想我必须在每次更新之前清除画布。这是我的代码: // Some operations var canvas = this.components.toArray()[idItem].nativeElement; this.barChart = new Chart(canvas, { type:

我的第一个爱奥尼亚网络应用程序有问题。我应该做一些图表,所以我决定使用d3.js和tree.js。我增加了用不同类型的图表可视化数据的可能性。当我在同一个画布上绘制不同的图表时,问题就出现了,所以我想我必须在每次更新之前清除画布。这是我的代码:

// Some operations

var canvas = this.components.toArray()[idItem].nativeElement;

this.barChart = new Chart(canvas, {

  type: type,
  data: {
          labels: keys,
          datasets: [{
                      label: label,
                      data: values,
                      backgroundColor: 'rgba(255, 99, 132, 0.2)',
                      borderColor: 'rgba(255,99,132,1)',
                      borderWidth: 1
                    }]
        },
  options: {
            scales: {
                      yAxes:  [{
                                ticks: {
                                        beginAtZero:true
                                        }
                              }]
                    }
            }
  });
在web上搜索()我尝试添加以下行:

var context = canvas.getContext('2d');
context.clearRect(0, 0, canvas.width, canvas.height);
但我还是有问题


你能帮我吗?谢谢。

您可能需要使用官方的d3.js API来实现。 通过web api清除画布是一种暴力行为,可能会导致此问题