使用函数作为值来反应状态(setState),并使用构造函数vs状态obj

时间:2020-07-27 09:19:32

标签: javascript reactjs class constructor state

我真的很难理解React中的状态。两者之间有什么区别

此:

class Todo extends ... {
constructor (){
 super()
 this.state = { ... }
 }
}

还有:

class Todo extends ... {
 state = { ... }
}

我还困惑和愚蠢地理解为什么他们有时会在状态内部放置一个函数。

const [ user, setUser] = useState(() => ...)

我找不到区分这些主题的任何资源。希望您能帮我解释一下原因和原因。我读过有关React的博客,但他们没有在上面提到这些事情。

1 个答案:

答案 0 :(得分:0)

由于Babel为您在幕后添加了构造函数,因此无需声明它。您可以像第二个示例一样省略它并定义状态,最终结果将完全相同。