我正在尝试加载一个函数5个可以完成某些任务并返回响应的函数,因此该钩子具有对象数据类型
const [Load, SetLoad] = useState({
Group : true,
Workshop : true,
Event : true,
Talk: true,
Project: true
})
现在我正在尝试调用该函数并使用useEffect挂钩更新状态
useEffect(() => {
AllGroup().then(res => {
SetLoad({...Load, Group: false})
}).catch(err => {
console.log(err.response)
})
AllProject().then(res => {
SetLoad({...Load, Project: false})
}).catch(err => {
console.log(err.response)
})
AllTalk().then(res => {
SetLoad({...Load, Talk: false})
}).catch(err => {
console.log(err.response)
})
AllEvent().then(res => {
SetLoad({...Load, Event: false})
}).catch(err => {
console.log(err.response)
})
AllWorkshop().then(res => {
SetLoad({...Load, Workshop: false})
}).catch(err => {
console.log(err.response)
})
},[]);
现在我所面临的问题只是状态对象的一项变成了false,其余的保持默认值,所以任何人都可以帮助修复和更新状态对象的所有项
答案 0 :(得分:2)
您应该使用功能更新。 例如
SetLoad(Load=>({...Load, Workshop: false}))