格式化NumeralJS百分比而不乘以100

时间:2014-12-31 17:15:30

标签: formatting handsontable

在Handsontable中,您可以使用format单元格上的numeric选项来相应地格式化值。由于它使用了NumeralJS,我查看了文档,看看如何格式化数字只是添加%符号而不是乘以100但是如果不设置我自己的话就找不到如何做到这一点。

示例单元格:

{
    "type": "numeric",
    "format": "0.00%"
}

当值为7时,显示"700.00%"。我希望它能显示“7.00%”。有什么方法可以在掌上电脑中做到这一点吗?

3 个答案:

答案 0 :(得分:2)

我认为如果不对 numeral.js 文件进行更改,目前无法做到这一点。

如果需要,您可以删除function formatPercentage部分来修改* 100(在 numberal.js 中找到):

function formatPercentage (n, format, roundingFunction) {
    var space = '',
        output,
        value = n._value/* * 100*/; // comment out or remove * 100 here

    ...
}

答案 1 :(得分:2)

对于仍在寻找实现此目标的最简单方法的任何人,您都可以像这样设置数字选项:

numeral.options.scalePercentBy100 = false;

贷记Csaba Toth以创建PR。 PR Here

答案 2 :(得分:0)

也许比覆盖数字JS逻辑更好,您也可以将数字数字化为所需的小数精度,然后在末尾连接百分比符号。

formatPercent(number) {
    return `${numeral(number).format('0.00')}%`;
}