const [n, setN] = React.useState(0)
const [user, setUser] = React.useState({name: 'Jack', age: 18})
function App(){
const [user, setUser] = React.useState({name: 'Jack', age: 18})
const onClick = () =>{
//setUser不可以局部更新,如果只改变其中一个,那么整个数据都会被覆盖
// setUser({
// name: 'Frank'
// })
setUser({
...user, //拷贝之前的所有属性
name: 'Frank' //这里的name覆盖之前的name
})
}
return (
<div className='App'>
<h1>{user.name}</h1>
<h2>{user.age}</h2>
<button onClick={onClick}>Click</button>
</div>
)
}
// 初始化 state 为 initialState。这也叫作 惰性初始 state
const [state, setSate] = useState(() => initialState)
// 取到最新的 state 并加一后进行 setState
setState(state => state + 1)