如何在 TextInput 中添加前缀 - React Native

How to add prefix in TextInput - React Native

我想为我的文本输入添加前缀,我想知道如何操作。

文本输入代码

        <TextInput
          style={styles.inputs}
          placeholder="Mobile Number"
          keyboardType="number-pad"
          underlineColorAndroid="transparent"
          onChangeText={mobile_number => this.setState({mobile_number})}
        />

我想要的最终输出

您可以使用文本掩码。试试这个 https://github.com/react-native-community/react-native-text-input-mask

处理phone个数字输入 https://www.npmjs.com/package/react-phone-number-input

您可以结合使用两个文本输入。一个用于前缀,另一个用于输入文本。 像这样:

<View>
  <TextInput /> // Text or dropdown pick, something else
  <TextInput />
<View>

如果您不希望前缀可编辑,请使用标签:

<View>
  <Label />
  <TextInput />
<View>

你可以这样做:

  render() {
    return (
      <View style={styles.inputContainer}>
        <Text style={styles.prefix}>+94</Text>
        <TextInput
          placeholder="Mobile Number"
          keyboardType="number-pad"
          underlineColorAndroid="transparent"
          onChangeText={mobile_number => this.setState({ mobile_number })}
        />
      </View>
    )
  }
const styles = StyleSheet.create({
  inputContainer: {
    borderWidth: 1,
    flexDirection: 'row',
    alignItems: 'center',
    backgroundColor: 'white',
    marginHorizontal: 10,
    borderRadius: 10
  },
  prefix: {
    paddingHorizontal: 10,
    fontWeight: 'bold',
    color: 'black'
  }
})