0
votes

Ajouter du texte de manière dynamique à textinput

Je voudrais ajouter un Unicodetexte vu à l'intérieur du TextInput lorsque je clique sur un bouton.

J'ai essayé de créer un état {texte} Ajouter l'UNICODETEXT au texte de l'état. P>

Le texte avec le texte ajouté est correctement affiché dans la console.log (). Pas dans le TextInput. P>

import { Icon, Input } from "react-native-elements";
var emoji = require("node-emoji");

export default class MainViewMessageInput extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      text: "",
      username: "",
      visible: false,
      showEmoticons: false
    };
  }

  _sendMessage() {
    var texte = this.state.text;
    this.setState({ text: "" });
    console.log(this.state.text);
  }

  _addEmoji() {
    this.state.text = this.state.text + emoji.get("green_heart");
    const emojiChar = this.state.text + emoji.get("green_heart");
    this.setState({ text: emojiChar });
    console.log(this.state.text);
  }
  render() {
    return (
      <View style={styles.container}>
        <Input
          style={{ flex: 1 }}
          leftIcon={
            <TouchableHighlight
              onPress={() => {
                this._addEmoji();
              }}
              style={styles.icon}
            >
              <Icon size={40} color="#d2d3d5" name="mood" />
            </TouchableHighlight>
          }
          rightIcon={
            <Icon
              reverse
              onPress={() => this.setState({ visible: true })}
              color="#00b5ec"
              name="send"
              size={23}
            />
          }
          rightIconContainerStyle={{ marginRight: -7 }}
          leftIconContainerStyle={{ marginLeft: 0 }}
          inputContainerStyle={styles.inputContainer}
          inputStyle={styles.input}
          placeholder="Write your message ..."
          underlineColorAndroid="transparent"
          multiline={true}
          editable={true}
          onChangeText={text => this.setState({ text })}
        />
      </View>
    );
  }
}


0 commentaires

3 Réponses :


0
votes

Vous pouvez appuyer sur TextInput en tableau dans l'exécution afin que vous obtiens de la TextInput de manière dynamique


0 commentaires

0
votes

Pour l'entrée Ajouter une valeur de champ = {this.state.text}

Référence


0 commentaires

0
votes

Supprimer this.state.text = this.state.text + emoji.get ("green_heart"); à partir de _addemoji ()


0 commentaires