【问题标题】:Error when trying to use CanvasJS via RequireJS尝试通过 RequireJS 使用 CanvasJS 时出错
【发布时间】:2018-12-29 01:18:55
【问题描述】:

我正在尝试在我的项目中使用 CanvasJS。我使用 RequireJS 来管理模块,并在主脚本中有这个:

define(['domReady',"canvasjs","common-functions"], function(domReady,CanvasJS) {
    domReady(function () {
        window.CanvasJS = CanvasJS;
        init_page_select();
    });
});

这是我的 requireJS 配置文件中的路径:

 "paths": {
      // other stuff here
      "canvasjs": "node_modules/canvasjs/dist/canvasjs.min"

    },

我可以看到 canvasjs.min.js 文件被很好地抓取 - 但随后我收到了这个奇怪的错误:

ReferenceError: intToHexColorString is not defined[Learn More] canvasjs.min.js:7:7042
    [33]</n.prototype.render https://www.test.org/2018/js/lib/node_modules/canvasjs/dist/canvasjs.min.js:7:7042
    [28]</n.prototype.render https://www.test.org/2018/js/lib/node_modules/canvasjs/dist/canvasjs.min.js:5:14150
    n/this.render https://www.test.org/2018/js/lib/node_modules/canvasjs/dist/canvasjs.min.js:8:17771
    init_page_select https://www.test.org/2018/js/lib/spot_view_stats.js:83:2
    <anonymous> https://www.test.org/2018/js/lib/spot_view_stats.js:4:3
    domReady https://www.test.org/2018/js/lib/domready.js:105:13
    <anonymous> https://www.test.org/2018/js/lib/spot_view_stats.js:2:2
    execCb https://www.test.org/2018/js/lib/require.js:5:12859
    check https://www.test.org/2018/js/lib/require.js:5:6575
    enable/</< https://www.test.org/2018/js/lib/require.js:5:9031
    bind/< https://www.test.org/2018/js/lib/require.js:5:812
    emit/< https://www.test.org/2018/js/lib/require.js:5:9497
    each https://www.test.org/2018/js/lib/require.js:5:289
    emit https://www.test.org/2018/js/lib/require.js:5:9465
    check https://www.test.org/2018/js/lib/require.js:5:7169
    enable/</< https://www.test.org/2018/js/lib/require.js:5:9031
    bind/< https://www.test.org/2018/js/lib/require.js:5:812
    emit/< https://www.test.org/2018/js/lib/require.js:5:9497
    each https://www.test.org/2018/js/lib/require.js:5:289
    emit https://www.test.org/2018/js/lib/require.js:5:9465
    check https://www.test.org/2018/js/lib/require.js:5:7169
    enable https://www.test.org/2018/js/lib/require.js:5:9358
    init https://www.test.org/2018/js/lib/require.js:5:5716
    h https://www.test.org/2018/js/lib/require.js:5:4287
    completeLoad https://www.test.org/2018/js/lib/require.js:5:12090
    onScriptLoad https://www.test.org/2018/js/lib/require.js:5:13014

我正在调用它:

var chart = new CanvasJS.Chart("thegraph",
{
  title:{
   text: impressionText
 },
  theme: "theme2",
 axisX: {
   valueFormatString: "MMM-DD-YYYY",
   labelAngle: -50
  },
  axisY:{
    valueFormatString: "#0",
    title:  impressionText
  },
 data: [
 {
  type: "line",
  showInLegend: true,
  legendText: legendText,
  dataPoints: dataPoints
}
]
});

chart.render();

有趣的是,如果我告诉它加载 canvasjs.js 而不是 canvasjs.min.js,我会收到另一个错误:

ReferenceError: intToHexColorString 未定义[了解更多]

【问题讨论】:

    标签: requirejs canvasjs


    【解决方案1】:

    好的,所以问题似乎是我的版本。出于某种原因,“npm install canvasjs”正在安装 1.8.1,但 2.2 已经出局。根据他们的要求,我将其更新为 2.2 并解决了问题。不过,看起来很奇怪 npm 正在运行这样一个过时的版本

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-11
      • 2013-09-19
      • 2012-05-03
      • 2014-01-31
      • 2019-05-16
      • 2016-04-14
      • 2020-02-24
      • 2020-08-27
      相关资源
      最近更新 更多