【问题标题】:React Native number input mask with always two decimalsReact Native 数字输入掩码始终带有两位小数
【发布时间】:2019-08-09 11:08:28
【问题描述】:

我正在努力让输入掩码正常工作。我希望输入的行为如下:

  • 一个插入100然后它显示1.00

  • 一个插入 30000 然后它显示 300.00

  • 插入 4390132 然后显示 43901.32

最后,我希望它总是有两个小数点,无论位数多少

我试过这个库https://github.com/benhurott/react-native-masked-text

但我只能使用有限的数字。有人有什么建议吗?

【问题讨论】:

  • 你可以使用num.slice(0,-2) + '.' + num.slice(-2)
  • @MaheerAli - 当只有 1 位数字时会发生什么?或者当需要对结果值执行额外的数学运算时?这将输出一个字符串,因此很可能会引入问题
  • @ThatCoderGuy 你是对的。它不是最好的解决方案。你的解决方案是上帝+1

标签: javascript react-native mobile


【解决方案1】:

使用一些简单的数学运算,您应该能够做到这一点。

首先将数字除以 100,然后将其转换为 Number,您可以调用 toFixed() 方法,指定 2 个小数位。像这样:

Number((num / 100).toFixed(2));

【讨论】:

    猜你喜欢
    • 2016-03-01
    • 1970-01-01
    • 2017-11-11
    • 2016-08-12
    • 2017-06-24
    • 2016-12-01
    • 1970-01-01
    • 2014-05-03
    • 1970-01-01
    相关资源
    最近更新 更多