gpt4 book ai didi

javascript - React hooks,每个状态值一个钩子(Hook)?

转载 作者:搜寻专家 更新时间:2023-11-01 00:34:29 25 4
gpt4 key购买 nike

我对 Hooks 还很陌生,对将它用于 future 的项目/工作非常感兴趣。我很想了解更多关于对具有许多不同状态的组件使用 Hook 的最佳实践。据我所知,对于每个状态值,您将使用 useState Hook 。

例如,假设我们有一个基于类的组件,其状态为:

this.state = {
state1: 0,
state2: '',
state3: false,
state4: [],
state5: {},
state6: null
}

如果我要使用钩子(Hook)来转换它...最好的做法是对每个状态使用 useState(总共 6 个 useState)或者是否有更好的怎么办?

谢谢大家!

最佳答案

根据我的选择,我认为最佳做法是:

   const [state1, setState1] = useState(0)
const [state2, setState2] = useState('')
const [state3, setState3] = useState(false)
const [state4, setState4] = useState([])
const [state5, setState5] = useState({})

因为你要控制的每个状态局部都是不同类型的。您可以更灵活地控制每个变量。

但是如果你想处理你的情况,你可以这样做:

   const [state, setState] = useState({
state1: 0,
state2: ''
state3: false
})

更新 state1 和 state2 时:

   setState({
...state,
state1: 1,
state2: "yada"
})

关于javascript - React hooks,每个状态值一个钩子(Hook)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58137848/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com