我是apexchart和reactjs的新手,不知道如何根据编号显示series。特定月份的邮件,而不是提供静态数据。我已经通过了链接“ ApexCharts barchart vertical categories logic in ReactJs?”,但无法正确输入逻辑。
您可以使用momentjs解析日期格式。
我很确定可以对其进行优化。我会说最好的优化是已经以正确的格式接收数据。
const countEmailsByMonth = data => {
const dates = data.map(datum =>
moment(datum.date, ["DD-MM-YYYY"]).format("MMMM")
);
// getting our dates from your message json file
//and formatting them to display month
const months = moment.months();
// getting 12 months arr from moment.js
const mergedMonths = [...months, ...dates];
// merging months and dates together
const sortedMonths = mergedMonths.sort(
(a, b) => months.indexOf(a) - months.indexOf(b)
);
//sorting months
const chartData = {};
//counting duplicates
sortedMonths.map(val => (chartData[val] = chartData[val] + 1 || 0));
return chartData;
};
这里是codesandbox的链接