I have some question about sum of number inputs in my 'app'. I don't know how i can get this sum. I have some quantity of number inputs. There may be a different number of them. User must enter some amount of money in each number field. After clicking on button "calculate" the sum of this number inputs should display in p>span. Here the code:
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.0/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.0/umd/react-dom.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.21.1/babel.min.js"></script>
<div id="root"></div>
<script type="text/babel">
class Sum extends React.Component {
constructor() {
super();
this.state = {
elements: ["main work", "freelance"],
value: "",
numberValue: ""
};
this.adder = this.adder.bind(this);
this.reset = this.reset.bind(this);
this.handleChange = this.handleChange.bind(this);
// this.handleChangeNumber = this.handleChangeNumber.bind(this);
}
adder() {
this.state.elements.push(this.state.value);
this.setState({
elemements: this.state.elements
});
}
reset() {
this.setState({
elements: this.state.elements.slice(1, 1)
});
}
handleChange(e) {
this.setState({
value: e.target.value
});
}
// handleChangeNumber(e) {
// this.setState({
// numberValue: e.target.value
// });
// }
delCurrent(index) {
this.state.elements.splice(index, 1);
this.setState({
elements: this.state.elements
});
}
render() {
const list = this.state.elements.map((element, index) => {
return (
<li key={index}>
{element}:{" "}
<input
style={{ width: 70, marginBottom: 2 }}
type="number"
value={this.state.numberValue}
// onChange={this.handleChangeNumber}
/>
<span>USD</span>
<button
style={{ cursor: "pointer" }}
onClick={this.delCurrent.bind(this)}
>
×
</button>
</li>
);
});
return (
<div>
<h3>Cash control 'app'</h3>
<input
type="text"
value={this.state.value}
onChange={this.handleChange}
placeholder="your income"
/>
<button style={{ cursor: "pointer" }} onClick={this.adder}>
add to list
</button>
<button style={{ cursor: "pointer" }} onClick={this.reset}>
reset
</button>
<ol>{list}</ol>
<p>
Total sum: <span />
</p>
<button style={{ cursor: "pointer" }}>calculate</button>
</div>
);
}
}
ReactDOM.render(<Sum />, document.getElementById("root"));
</script>
I hope you guys can help me, ty