Я пытаюсь написать простой компонент React, который подсчитывает количество символов, введенных в текстовое поле. Компонент визуализируется отлично, но когда я пытаюсь ссылаться на this.state, компонент разбивается, и экран пуст.My React Component разбивается, когда я использую this.state
Вот код:
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"))
вопрос с {this.state.text. длина} вещей делают, если эта строка заменяется на {} this.props.text.length
Вы пытались отладить? очевидно, что 'this.state.text' либо не определено, либо не имеет свойства' length'. Кроме того, неясно, что означает «перерывы». Обычно, если вы открываете консоль браузера, вы можете увидеть ошибку, чтобы избежать публикации таких вопросов. – akonsu