J'essaye d'écrire un composant React simple qui compte la quantité de caractères entrés dans un champ de texte. Le composant est rendu bien, mais quand j'essaie de référencer this.state, le composant se casse et l'écran est vide.Mon composant React se casse quand j'utilise this.state
Voici le code:
HTML:
<div id="content">
</div>
CSS:
#content {
width: 800px;
margin-left: auto;
margin-right: auto;
}
body {
background-color: #F1FAEE; ;
}
h1 {
font-family: Avenir;
color: black;
font-size: 44px;
}
JavaScript:
class Box extends React.Component {
getInitialState() {
return {
text: this.props.text
}
}
handleChange(event) {
this.setState({
text: event.target.value
})
}
render() {
return (
<div>
<h1>This App Counts Letters</h1>
<textarea value = {this.props.text} onChange = {this.handleChange}> </textarea>
<h1>{this.state.text.length}</h1>
</div>
);
}
};
ReactDOM.render(<Box text = "I find this frustrating"/>,document.getElementById("content"))
La question est avec {this.state.text. longueur} choses rendent si cette ligne est modifiée pour {this.props.text.length}
Avez-vous essayé de déboguer? Apparemment 'this.state.text' est indéfini ou n'a pas la propriété' length'. De plus, on ne sait pas très bien ce que signifie "pauses". Habituellement, si vous ouvrez la console du navigateur, vous pouvez voir l'erreur afin que vous puissiez éviter de poster ce genre de questions. – akonsu