2016-12-01 102 views
0

我不斷收到此錯誤,但我仍然無法顯示Chart.js圖表​​,但我嘗試了在互聯網上找到的多個代碼。Chart.js出現錯誤:TypeError:t is undefined

下面是HTML的相關部分:

<head> 
    <script src = "https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.2/Chart.min.js"></script> 
    ... 
</head> 

<body> 
    <canvas id = "myChart"></canvas> 
    ... 
</body> 

這裏是JavaScript:

var ctx = document.getElementById("myChart"); 
var myChart = new Chart(ctx, { 
    type: 'bar', 
    data: { 
     labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"], 
     datasets: [{ 
      label: '# of Votes', 
      data: [12, 19, 3, 5, 2, 3], 
      backgroundColor: [ 
       'rgba(255, 99, 132, 0.2)', 
       'rgba(54, 162, 235, 0.2)', 
       'rgba(255, 206, 86, 0.2)', 
       'rgba(75, 192, 192, 0.2)', 
       'rgba(153, 102, 255, 0.2)', 
       'rgba(255, 159, 64, 0.2)' 
      ], 
      borderColor: [ 
       'rgba(255,99,132,1)', 
       'rgba(54, 162, 235, 1)', 
       'rgba(255, 206, 86, 1)', 
       'rgba(75, 192, 192, 1)', 
       'rgba(153, 102, 255, 1)', 
       'rgba(255, 159, 64, 1)' 
      ], 
      borderWidth: 1 
     }] 
    }, 
    options: { 
     scales: { 
      yAxes: [{ 
       ticks: { 
        beginAtZero:true 
       } 
      }] 
     } 
    } 
}); 

我發現在這裏,例如:http://www.chartjs.org/docs/

我在得到這個錯誤控制檯:

TypeError: t is undefined 

有人可以幫忙嗎?謝謝。

+1

您發佈的代碼很好:https://jsfiddle.net/bd6Lf88a/問題必須在其他地方。劃痕;你需要包含最新版本:'https:// cdnjs.cloudflare.com/ajax/libs/Chart.js/2.4.0/Chart.bundle.js' –

+0

是的,現在只是想通了。顯然,該CDN上有許多版本不起作用。這一個https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.2.0/Chart.min.js顯然也起作用。謝謝。 –

回答

0

將javascript代碼(從<script type="text/javascript">var ctx ...</script>開始)放在canvas元素後面。這確保畫布元素在被參考時已經存在var ctx = document.getElementById("myChart");

這應該可以解決您的問題。