Vis.js / Moment.js - 时间轴标签

Vis.js / Moment.js - Timeline Labels

vis.js 时间轴的标签格式有问题。我想显示 1 小时 30 分钟的 excat 时间段,标签应该只显示经过的分钟数和秒数。

我这样配置选项:

let options = {
        autoResize: true,
        min: '2000-1-1 00:00:00',
        max: '2000-1-1 01:30:00',
        start: '2000-1-1 00:00:00',
        end: '2000-1-1 01:30:00',
        //zoomMax: 86399999,

        zoomMin: 18000,
        format: {
            minorLabels: {
                millisecond: '',
                second:     'mm:ss',
                minute:     'mm:ss',
                hour:       'mm:ss',
                weekday:    '',
                day:        '',
                week:       '',
                month:      '',
                year:       ''
              },
              majorLabels: {
                millisecond:'',
                second:     '',
                minute:     '',
                hour:       '',
                weekday:    '',
                day:        '',
                week:       '',
                month:      '',
                year:       ''
              }
        }
    };

据我了解,vis.js 调用来自 moment.js 的 moment().format() 函数的标签(秒、分、小时等)。在 moment.js 格式中是否有可能以一种简单的方式将小时数 (H) 乘以 60 与分钟 (mm) 值相加?

在我当前的配置中,它会在 60 分钟后的 00 分钟重新启动: timeline

(是的,我正在处理足球申请)

In the docs 您可以找到通过函数自定义日期格式的选项:

You can also use a function format for each label. The function accepts as arguments the date, scale and step in that order, and expects to return a string for the label.

您可以在下面找到转换为分钟的时间:

format: {
  minorLabels: function (date, scale, step) { 
    var time = date.format("HH:mm");
    return moment.duration(time).asMinutes();
  },
  majorLabels: function (date, scale, step) { return "" }
}

JSFiddle with example