我在项目中使用了jalali-poment库来处理波斯日期。目前,我坚持如何将图书馆与Highcharts一起使用,将所有日期转换为Jalali日期。我找到了一个" time.date"选项,该选项采用自定义日期对象,用于执行所有日期相关的操作,例如HighStock图表中的Zoom按钮,以及HighStock和Line Charts中的Xaxis标签。但是我真的不明白如何创建和传递自定义对象?我在stackoverflow中看到了所有相关的Q& a,但是它们都没有使用该选项来更改日期对象,而且任何人都不会提及如何使用Jalali-Moment库来做到这一点。Highcharts文档中也没有官方例子。请注意,我必须使用jalali-poment库,我不能使用任何其他图书馆。
您能确切地说明如何实现这一目标吗?(最好提到我在ReactJ框架中使用HighCharts库。(
您可以覆盖所有Highcharts.dateFormats
方法并在其中使用jalali-moment
插件:
moment.locale('fa');
Highcharts.dateFormats = {
'a': function(ts) {
return moment(ts).format('dddd')
},
'A': function(ts) {
return moment(ts).format('dddd')
},
'd': function(ts) {
return moment(ts).format('DD')
},
'e': function(ts) {
return moment(ts).format('D')
},
'b': function(ts) {
return moment(ts).format('MMMM')
},
'B': function(ts) {
return moment(ts).format('MMMM')
},
'm': function(ts) {
return moment(ts).format('MM')
},
'y': function(ts) {
return moment(ts).format('YY')
},
'Y': function(ts) {
return moment(ts).format('YYYY')
},
'W': function(ts) {
return moment(ts).format('ww')
}
};
实时演示: http://jsfiddle.net/blacklabel/cbqh3d0m/
API参考: https://api.highcharts.com/class-reference/highcharts#.dateformats
另外,您可以将Highcharts Localization
插件作为替代解决方案进行检查:https://www.highcharts.com/products/plugin-registry/single/single/21/highcharts localization