With a React Class component i have the following state object as an example:
state = {
typeEvent: [],
reductionCoefficient: []
}
when i want to make a function that gets an specific attribute from the state i can simply use
getArray = (name) => {
return this.state[name]
}
Is there something equivalent when i use Hooks? Because i would have to write this
const [typeEvent,setTypeEvent] = useState([])
const [reductionCoefficient,setCoefRed] = useState([])
const getArray = (name) => {
if(name=='typeEvent'){
return typeEvent
}
if(name=='reductionCoefficient'){
return reductionCoefficient
}
}
CodePudding user response:
You can simply write your both arrays into one state:
const [state, setState] = useState({typeEvent:[], reductionCoefficient:[]});
Now just access them by their name:
state.typeEvent
or
state.reductionCoefficient