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

如何在LightningWebChartJS的tooltip中为数值添加'k'后缀?

LightningWebChartJS tooltip添加'k'后缀不显示的解决方法

你遇到的问题是因为c-tooltip的filter回调不能直接返回字符串,组件要求返回一个与传入的tooltipItems结构一致的对象,修改其中的value字段后返回才能生效。

正确的回调实现方式

回调函数需要复制原tooltipItems对象,修改value为带'k'的字符串,再返回这个修改后的对象:

myCustomTooltipFunction(tooltipItems) {
    // 复制原对象避免修改源数据
    const modifiedTooltip = {...tooltipItems};
    // 给数值添加'k'后缀,可按需处理非数值情况
    modifiedTooltip.value = `${modifiedTooltip.value}k`;
    return modifiedTooltip;
}

同时修复代码中的语法错误

你原代码里第二个<c-data>的detail属性存在引号不匹配的语法错误,会导致数据解析异常,需要修正:
原错误代码:

<c-data label="Warning" detail='[10,20,30&quot;,&quot;40&quot;]' backgroundcolor='rgba(119, 185, 242, 1)' stack="1"></c-data>

修正后:

<c-data label="Warning" detail='[10,20,30,40]' backgroundcolor='rgba(119, 185, 242, 1)' stack="1"></c-data>

完整代码示例

<c-chart type="bar" responsive="true">
    <c-dataset labels='["Item 1","Item 2","Item 3","Item 4", "Item 5","Item 6","Item 7"]'>
        <c-data label="Neutral" detail='[10,20,30,40]' backgroundcolor='rgba(50, 150, 237, 1)' stack="1" ></c-data>
        <c-data label="Warning" detail='[10,20,30,40]' backgroundcolor='rgba(119, 185, 242, 1)' stack="1"></c-data>
        <c-data label="Error" detail='["10","20","30","40"]' backgroundcolor='rgba(157, 83, 242, 1)' stack="1"></c-data>
    </c-dataset>
    <c-cartesian-axis axis="x" stacked="true" >
    </c-cartesian-axis>
    <c-cartesian-axis axis="y" stacked="true"></c-cartesian-axis>
    <c-tooltip enabled="true" filter={myCustomTooltipFunction}></c-tooltip>
</c-chart>
myCustomTooltipFunction(tooltipItems) {
    const modifiedTooltip = {...tooltipItems};
    modifiedTooltip.value = `${modifiedTooltip.value}k`;
    return modifiedTooltip;
}

修改完成后,tooltip就能正确显示带'k'后缀的数值了。

内容的提问来源于stack exchange,提问作者Afrose ahamed

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 16:50:10