尝试在JavaScript代码中使用Chartjs时出现“未定义需求”错误

时间:2019-09-10 21:25:35

标签: javascript html node.js chart.js

我不需要Node和javascript。我正在尝试将chartjs合并到我的项目中。我有一个链接到html文件的javascript文件。这两个文件如下所示:

charts.html:

__libc

charts.js:

<!DOCTYPE html>
<html lang="en" dir="ltr">

<head>
  <meta charset="utf-8">
  <title>Charts</title>
</head>

<body>
  <p id="paragraph">This will be the Charts page.</p>

  <canvas id="myChart" width="400" height="400"></canvas>
  <script src="js/charts.js"></script>

</body>

</html>

问题出在我导入chart.js依赖项的方式上。我正在尝试行//jshint esversion:6 var chart = require('chart.js'); //what's going on here?? var paragraph = document.querySelector("#paragraph"); //set click event listener paragraph.addEventListener("click", changeMessage); function changeMessage() { paragraph.textContent = "clicked!"; console.log(paragraph.textContent); } var ctx = document.getElementById('myChart').getContext('2d'); 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 } }] } } }); ,但是在呈现html页面时,我看到一个控制台错误,提示:“未捕获的ReferenceError:未定义require”。完全删除thatt行会使程序抱怨它无法识别var chart = require('chart.js');对象。

我在哪里错了?

2 个答案:

答案 0 :(得分:0)

如果您在节点上,则需要npm install require.js。如果您不在节点上,则可以使用ES6 Import。

答案 1 :(得分:0)

我建议导入cdnjs库。只需复制链接at the Chart.js-site并将其放入您的html文件中。

<head>
  <title>Charts</title>  
  <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.bundle.js">
</head>