React native 在React Native中使用TextInput创建数字转换器
我正在尝试使用文本输入和2个触摸高光“+”和“-”创建一个数字递增/递减器 我还将textValue设置为getInitialState函数中的状态,并将其设置为0React native 在React Native中使用TextInput创建数字转换器,react-native,React Native,我正在尝试使用文本输入和2个触摸高光“+”和“-”创建一个数字递增/递减器 我还将textValue设置为getInitialState函数中的状态,并将其设置为0 为什么这不起作用,我做错了什么?似乎TextInput不支持值是数字。我在TextInput的值上加了一个.toString(),一切都按预期开始工作。此外,您还需要在更改时将字符串值转换为数字,因为更改时TextInput会传递字符串 新的更新方法: updateText: function (text) { this.s
为什么这不起作用,我做错了什么?似乎TextInput不支持值是数字。我在TextInput的值上加了一个.toString(),一切都按预期开始工作。此外,您还需要在更改时将字符串值转换为数字,因为更改时TextInput会传递字符串 新的更新方法:
updateText: function (text) {
this.setState({textValue: +text});
},
新的文本输入:
<TextInput
keyboardType='number-pad'
value={this.state.textValue.toString()}
onChangeText={this.updateText}
style={styles.textInput}
/>
似乎TextInput不支持值为数字。我在TextInput的值上加了一个.toString(),一切都按预期开始工作。此外,您还需要在更改时将字符串值转换为数字,因为更改时TextInput会传递字符串 新的更新方法:
updateText: function (text) {
this.setState({textValue: +text});
},
新的文本输入:
<TextInput
keyboardType='number-pad'
value={this.state.textValue.toString()}
onChangeText={this.updateText}
style={styles.textInput}
/>
当您触摸+或-?时,您看到它做了什么?看起来很好。执行一些chrome开发工具调试。@rmevans9嘿,当我单击+时,文本输入中的文本将消失,而-使其附加1(例如:2将变为21)@rmevans9但如果我在a中打印状态,它将完美地执行递增和递减操作:/当您触摸+或-?时,您看到它做了什么?看起来很好。执行一些chrome开发工具调试。@rmevans9嘿,当我单击+时,文本输入中的文本将消失,而-使其附加1(例如:2将变为21)@rmevans9但如果我在a中打印状态,它将完美地执行递增和递减操作:/非常感谢。是的,文本输入有利于字符串。嘿@rmevans9,为什么你写
+Text
这对我来说很有用,但为什么我们要添加+
?@OliverDonChangeText
返回字符串。在提供的示例中,状态是一个数字。在字符串使JS将其更改为数字之前执行+
。这迫使州政府保留一个数字。谢谢。是的,文本输入有利于字符串。嘿@rmevans9,为什么你写+Text
这对我来说很有用,但为什么我们要添加+
?@OliverDonChangeText
返回字符串。在提供的示例中,状态是一个数字。在字符串使JS将其更改为数字之前执行+
。这迫使国家保持一定的数字。