从 useState 中选择一个特定的属性

Selecting an specific attribute from useState

使用 React Class 组件,我有以下状态对象作为示例:

state = {
 typeEvent: [],
 reductionCoefficient: []
}

当我想创建一个从状态获取特定属性的函数时,我可以简单地使用

getArray = (name) => {
 return this.state[name]
}

我使用 Hooks 时是否有等效的东西?因为我必须写这个

const [typeEvent,setTypeEvent] = useState([])
const [reductionCoefficient,setCoefRed] = useState([])
const getArray = (name) => {
 if(name=='typeEvent'){
  return typeEvent
 }
 if(name=='reductionCoefficient'){
  return reductionCoefficient
 }
}

您可以简单地将两个数组写入一个状态:

const [state, setState] = useState({typeEvent:[], reductionCoefficient:[]});

现在只需通过他们的名字访问他们:

state.typeEvent

state.reductionCoefficient