Pourquoi je ne peux pas changer ma valeur d'entrée dans Réagissent même avec le onChange auditeur

Je suis tout à fait nouveau pour Réagir et après avoir traversé quelques tutoriels, j'ai essayé ci-dessous le code de la mine.

J'ai fait un composant, passé accessoires à partir d'un magasin, sur componentWillMount je fais un nouvel état pour le composant. Le rendu est très bien jusqu'à maintenant.

Ensuite, j'ai lié mon state à la valeur d'une zone de saisie et j'ai onChange auditeur. Encore, je ne peux pas changer mes valeurs dans le domaine.

Depuis, je suis Angulaires de fond, je suis en supposant que la liaison d'entrée de la valeur de l'état comme ci-dessous va automatiquement mettre à jour la propriété name dans state objet. Je suis mal ici ??

componentWillMount(){
    this.setState({
        updatable : false,
        name : this.props.name,
        status : this.props.status
    });
}

//relevant DOM from component's render function
<input className="form-control" type="text" value={this.state.name} id={'todoName' + this.props.id} onChange={this.onTodoChange.bind(this)}/>

onTodoChange(){
    console.log(this);
    //consoling 'this' here, shows old values only.
    //not sure how and even if I need to update state here.
    //Do I need to pass new state to this function from DOM
    //TODO: send new data to store
}

Mon onTodoChange fonction de la console de la valeur de this qui a la même valeur de l'état que lors de l'initialisation. Comment dois-je aller sur la modification de l'état en tapant dans les boîtes de saisie, afin que je puisse les envoyer aux magasins.

OriginalL'auteur Saurabh Tiwari | 2017-01-19