У меня есть компонент, в котором у меня есть объект-астероид с несколькими значениями. и есть дни: 1 в моем состоянии. где я визуализирую свой астероид, я делаю * раз больше, чем каждое значение, чтобы получить значение для астероида за день. что я хочу сделать, так это перестать считать, когда общая масса астероида == totalSumMined. общая добытая сумма равна сумме всех добытых химикатов. Я пробовал несколько вещей, но ничего не работает. это мой компонент:
import React, { Component } from "react";
//import * as uuid from "uuid";
class Stock extends Component {
state = {
asteroid: { ...this.props },
days: 1,
};
handleClick = () => {
this.setState((prevState) => ({ days: prevState.days + 1 }));
};
render() {
const remainingMpct = parseInt(this.state.asteroid.remainingMpct);
console.log(typeof remainingMpct);
const nickel = this.state.asteroid.chemPerDay[0];
const iron = this.state.asteroid.chemPerDay[1];
const cobalt = this.state.asteroid.chemPerDay[2];
const water = this.state.asteroid.chemPerDay[2];
const nirtogen = this.state.asteroid.chemPerDay[4];
const ammonia = this.state.asteroid.chemPerDay[5];
// console.log(nickel, iron, cobalt, water, nirtogen, "NICKEL");
return (
<div className="stock">
<p>
- Day {this.state.days}
<button type="button" className="inButton" onClick={this.handleClick}>
+
</button>{" "}
</p>
<hr />
<p> - mass nickel: {nickel * this.state.days} </p>
<p> - mass iron: {iron * this.state.days} </p>
<p> - mass cobalt: {cobalt * this.state.days} </p>
<p> - mass water: {water * this.state.days} </p>
<p> - mass nitogen: {nirtogen * this.state.days} </p>
<p> - mass ammonia: {ammonia * this.state.days} </p>
<hr />
<p>
- Total mass mined:{" "}
{this.state.asteroid.totalSumMined * this.state.days ===
this.state.asteroid.asteroid.mass
? null
: this.state.asteroid.totalSumMined * this.state.days}
</p>
<p>- remaing mass: {remainingMpct / this.state.days}%</p>
</div>
);
}
}
export default Stock;