return (
<div key={index} className="search-term">
- <input type="text" onChange={handleChange}/>
+ <input type="text" value={value} onChange={handleChange}/>
<button onClick={handleRemoveTerm}>Remove</button>
</div>
);
constructor(props, context) {
super(props, context);
this.state = {
- terms: new Map(),
- nextTermId: 0,
+ terms: new Map().set(0, ''),
+ nextTermId: 1,
};
this.handleSubmit = this.handleSubmit.bind(this);
this.handleTermChange = this.handleTermChange.bind(this);
this.handleAddTerm = this.handleAddTerm.bind(this);
this.handleRemoveTerm = this.handleRemoveTerm.bind(this);
this.addEmptyTerm = this.addEmptyTerm.bind(this);
- }
-
- componentDidMount() {
- const terms = this.state.terms;
- if (terms.length === 0) {
- this.addEmptyTerm();
- }
+ this.emptyTerms = this.emptyTerms.bind(this);
}
handleSubmit(event) {
terms.forEach((term) => {
console.log(term);
});
+ this.emptyTerms();
}
handleTermChange(id, value) {
});
}
+ emptyTerms() {
+ this.setState({
+ terms: new Map().set(0, ''),
+ nextTermId: 1,
+ });
+ }
+
render() {
return (
<div className="sentiment-analysis">