Tell us what’s happening:
PLEASE HELP !!
checkFailing1 :- The DisplayMessages
component should render a div
containing an h2
element, a button
element, a ul
element, and li
elements as children.
checkFailing2 :- Clicking the Add message
button should call the method submitMessage
which should add the current input
to the messages
array in state.
Your code so far
class DisplayMessages extends React.Component {
constructor(props) {
super(props);
this.state = {
input: '',
messages: []
}
}
// Add handleChange() and submitMessage() methods here
handleChange(event) {
this.setState({
input: event.target.value,
messages: this.state.messages
})
}
submitMessage() {
this.setState({
input: "",
messages: [...this.state.messages, ...this.state.input]
})
}
render() {
return (
<div>
<h2>Type in a new Message:</h2>
{ /* Render an input, button, and ul below this line */ }
<input onChange={this.handleChange.bind(this)} value={this.state.input}></input>
<button onClick={this.submitMessage.bind(this)}>Add message</button>
<ul>
{this.state.messages.map((item, k) => {
<li key={k}>{item}</li>
})}
</ul>
{ /* Change code above this line */ }
</div>
);
}
};
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36
Challenge Information:
React and Redux - Manage State Locally First