使用Redux将

时间:2019-04-04 11:28:44

标签: javascript reactjs react-native redux formatting

我努力寻找一种合适的解决方案,以使用Redux在React Native中使用onChangeText函数格式化TextInput中的数字输入。

我尝试使用函数.toFixed(2),但是问题是,一旦在函数中键入一个数字,它就会将下一个数字解释为第一个小数,然后将其四舍五入为0。这是因为我用Redux控制输入。键入一个数字后,它将立即保存到Redux状态,并且TextInput的值prop会连接到Redux状态的该部分。

示例:我输入5,然后toFixed(2)返回5.00。现在,当我输入3时,它将解释为5.03,并且该函数将其舍入并再次返回5.00


我也尝试使用react-native-masked-text,但是问题是由于React Native的实际TextInput中的一个错误,我产生了可怕的闪烁效果,无法摆脱它。 (https://github.com/benhurott/react-native-masked-text/issues/12


理想的方法是输入一个数字,并在我按下第二个数字时将其作为第一个小数,小数点将向右移动一位。示例:我键入7,TextInput应该显示0.07,然后键入9,并且TextInput应该显示0.79。然后,我输入4,TextInput应该显示7.94等。

在美国,很多银行应用都将其作为标准做法。

1 个答案:

答案 0 :(得分:0)

您应该尝试使用由react-native-community本身开发的react-native-text-input-mask

HTH