我正在使用帶有 React 的 Chartjs。我有一個包含三個數據集的加密貨幣價格圖表,一個是價格列表,一個是與初始價格相切的水平線,另一個是與最高點相切的水平線。他們來了:datasets: [ { label: 'pricesData', fill: false, lineTension: 0, backgroundColor: 'rgba(75,192,192,1)', borderColor: chartColor, borderWidth: 2, data: prices }, { label: '0 line', radius: 0, fill: false, borderDash: [10,5], data: zeroLine, backgroundColor: 'rgba(255,255,255,1)', borderColor: 'rgba(255, 255, 255,.5)', }, { label: 'top Line', radius: 0, fill: false, borderDash: [10,5], data: topLine, borderColor: 'rgba(255, 255, 255,0)' }我正在嘗試創建一項功能,根據您在圖表上的位置更改另一個組件中顯示的價格。這是標簽選項中的回調函數:callbacks: { label: function(tooltipItem, data) { var item = data.datasets[0].data[tooltipItem.index]; var zeroLine = data.datasets[1].data[tooltipItem.index] let properties = { price: item, percentChange: (((item-zeroLine)/zeroLine)*100).toFixed(2) } props.parentCallback(properties); return(item) } }現在這像預期的那樣工作,除了它運行三次并且返回的項目用三個實例填充工具提示。我想這是因為我有三個數據集。我將如何防止這種情況并且只調用一次道具回調并只用一個值填充工具提示?還有一個輕微的幀速率故障,我想這是由此引起的。
如何防止 Chartjs 工具提示回調返回相同值的多個實例?
白衣染霜花
2023-06-09 17:44:33