IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

[React-Native] Récupération des données d'un champ de saisie


Sujet :

Android

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 1
    Points : 2
    Points
    2
    Par défaut [React-Native] Récupération des données d'un champ de saisie
    Bonjour,
    Je viens de commencer d'apprendre react-native et j'ai un problème avec mes champs de saisie.
    Je n'ai pas d'erreurs de compilation mais quand j’exécute et que j’appuie sur le bouton j'ai une erreur :

    Undefined is not an object (evaluating 'this.state.username')

    C'est sans doute lié a une mauvaise gestion des états.

    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    /**
     * Sample React Native App
     * https://github.com/facebook/react-native
     * @flow
     */
     
    import React, { Component } from 'react';
    import {
      Platform,
      StyleSheet,
      Text,
      View,
      TextInput,
      Button
    } from 'react-native';
     
     
    export default class App extends Component<Props> {
      constructor(props) {
        super(props);
        this.state = {
          username: '',
          password: ''
        };
      };
      _userSignup() {
        const { username } = this.state.username;
        const { password } = this.state.password;
      }
      render() {
        return (
          <View style={styles.container}>
          <TextInput
            style={styles.champ}
            onChangeText={(text) => this.setState({username:text})}
            value={this.state.username}
            placeholder = "Identifiant"
          />
          <TextInput
            style={styles.champ}
            onChangeText={(password) => this.setState({password})}
            value={this.state.password}
            placeholder = "Mot de passe"
          />
          <Button
            style={styles.bouton}
            title="s'inscrire"
            onPress={this._userSignup}
          />
          </View>
        );
      }
    }
     
    const styles = StyleSheet.create({
      container: {
        flex: 1,
        justifyContent: 'center',
        alignItems: 'center',
        backgroundColor: '#F5FCFF',
      },
      champ: {
        height: 50,
        width: 200,
        borderColor: 'black',
        borderWidth: 1,
        marginHorizontal:15,
        backgroundColor:'white',
        borderRadius: 10,
        marginTop : 30
      },
      bouton: {
        padding:10,
        overflow:'hidden',
        borderRadius:11,
        backgroundColor: '#cc0000',
        marginBottom: 60,
        marginHorizontal: 15,
        width: 160
      }
    });
    Merci de votre aide.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    198
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 198
    Points : 106
    Points
    106
    Par défaut
    Salut,

    Le problème vient de la onPress={this._userSignup}.
    Le context this n'est pas transmis à la méthode.

    Un des moyen de faire est

    onPress={() => this._userSignup() }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/08/2012, 15h52
  2. [MySQL] Récupération des donné MYSQL dans un champ select simple
    Par themaster dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 21/04/2009, 18h06
  3. Réponses: 12
    Dernier message: 04/09/2007, 11h52
  4. Réponses: 3
    Dernier message: 27/09/2006, 19h50
  5. Réponses: 13
    Dernier message: 20/03/2003, 08h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo