noUiSlider 长数舍入错误

noUiSlider long number rounding error

我用数据初始化 noUiSlider

var settings = {
  connect: "lower",
  range: {
    max: 87654567890,
    min: 0
  },
  start: 30679098762,
  step: 1
}

初始化滑块后值为 30679098761.50 为什么?

此处演示 - https://jsfiddle.net/serGlazkov/yrppsmvo/5/

不能在滑块宽度上准确表示这么大的数字(比如 300px 不能合理地除以 87654567890)。

解决方案是使用较小的数字范围,然后在数组中查找较大的值:

var range = ['x','x2','x3',...];

bigValueSlider.noUiSlider.on('update', function ( values, handle ) {
    bigValueSpan.innerHTML = range[values[handle]];
});

看看this example in the documentation如何处理它。

这是noUiSlider的bug,8.4.0版本已修复