You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular中使用Chart.js配置y轴刻度回调出现TS2322类型错误如何解决

报错原因
  • 回调函数的第一个入参被你错误标注为void类型,和Chart.js定义的ticks.callback入参类型(string | number)不匹配
  • 你当前的实现没有处理入参为字符串的场景,也会触发类型校验错误
修复代码

直接替换你的y轴配置为以下内容即可:

y: {
  title: {
    display: true,
    text: 'Total a pagar $'
  },
  ticks: {
    callback: function(tickValue: string | number) {
      const num = Number(tickValue);
      // 兼容非数字的刻度值
      if (isNaN(num)) return tickValue;
      // 不需要保留小数可以把toFixed去掉,直接写return (num / 1000) + 'k'
      return (num / 1000).toFixed(0) + 'k';
    }
  }
}
额外说明
  • 你代码里的scaleLabel配置在Chart.js v3及以上版本已经废弃,官方已经把这部分配置合并到title字段中,所以上面的代码已经移除了这段冗余配置,不会影响功能
  • 如果需要支持更大数值的单位转换(比如1000000转为1M),可以在回调里增加层级判断逻辑即可

内容的提问来源于stack exchange,提问作者Kristina Marquez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 22:06:02