首页 > 解决方案 > React Native - UseState,数字键盘不起作用

问题描述

这是我的代码 -

const StartGameScreen = props => {
const [enteredValue, setEnteredValue] = useState('');

const numberInputHandler = inputText => {
  setEnteredValue(inputText);
};

const resetInputHandler = () => {
  setEnteredValue('');
};

return (
  <View>
    <TextInput
      blurOnSubmit
      autoCapitalize="none"
      autoCorrect={false}
      keyboardType="number-pad"
      maxLength={2}
      onChangeText={numberInputHandler}
      value={enteredValue}
    />
    <View style={styles.button}>
      <Button title="Reset" onPress={resetInputHandler}/>
    </View>
  </View>
);

我对上面的代码有几个问题。

  1. 我正在调用numberInputHandler函数 onChangeText,但值没有更新。同样,重置按钮的 onPress 我正在调用另一个函数“resetInputHandler”,它也不起作用。

  2. keyboardType="number-pad"不管用。我能够在 iPhone 和 android 模拟器中看到普通键盘。

请问您能帮忙解决以上问题吗?

标签: react-nativereact-hooksuse-statereact-native-textinput

解决方案


推荐阅读