javascript - Chart.js 无法读取未定义的属性 'fontSize'

标签 javascript html laravel charts chart.js

HTML

<div class="chart-container" style="height:315px">
  <canvas id="test"></canvas>
</div>

我已经包含了这些文件

<script src="/assets/vendors/jquery/dist/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.min.js" type="text/javascript"></script>
<script src="/assets/js/test.js"></script>

测试.js

$(document).ready(function() {
  var ctx = document.getElementById('test').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
                  }
              }]
          }
      }
  });
});

我使用了 https://www.chartjs.org/docs/latest/ 中的示例代码对于 test.js。如果这可能与它有关,我也在使用 laravel。

这是我遇到的错误。

Chart.min.js:7 Uncaught TypeError: Cannot read property 'fontSize' of undefined at Object._parseFont (Chart.min.js:7) at i.fit (Chart.min.js:7) at i.update (Chart.min.js:7) at Chart.min.js:7 at Object.each (Chart.min.js:7) at Object.update (Chart.min.js:7) at ni.updateLayout (Chart.min.js:7) at ni.update (Chart.min.js:7) at ni.construct (Chart.min.js:7) at new ni (Chart.min.js:7)

编辑

删除 $(document).ready() 解决了问题

最佳答案

请检查此示例 jquery 2.2.4

// find elements
var ctx = document.getElementById('myChart');
var ctx = document.getElementById('myChart').getContext('2d');
var ctx = $('#myChart');
var ctx = 'myChart';
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
                }
            }]
        }
    }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<canvas id="myChart" width="400" height="400"></canvas> 

<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.min.js" type="text/javascript"></script>

关于javascript - Chart.js 无法读取未定义的属性 'fontSize',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57608464/

相关文章:

javascript - foreach 循环中的 Promise

javascript - 使用 .replace 替换 <b><u> 和 <i> 标签的任意组合

javascript - 预览文本区域内的 HTML 标记

Javascript类静态方法内存消耗

javascript - Vue.js 不适用于新的 Laravel 5.8 项目

html - 在绝对 <a> 之后放置一个相对 <span>

java - 从html访问WEB-INF/jsp

node.js - 为什么 webpack 在运行 npm run dev 时会报错

php - open_basedir,File() 不在允许的路径内

laravel - 通过laravel在 Stripe 上创建计划