1.26 状态提升来解决共享问题
一、状态提升解决共享问题
多次渲染同一个组件,每个组件都会拥有自己的state。状态是独立的,且不共享的
通过父子通信来实现状态提升(也就是同一页面两个按钮,可以同时操控同一个数据)
修改后的代码:
import { useState } from 'react' function Button({ scount, sonClick }) { return ( <div> <button onClick={sonClick}>点击</button> {scount} </div> ) } function App() { // 按钮内的功能提升到父组件,通过父子通信实现状态提升 const [count, setCount] = useState(0) const handleClick = () => { setCount(count + 1) } return ( <> <div>Default Template</div> <Button scount={count} sonClick={handleClick} /> <Button scount={count} sonClick={handleClick} /> </> ) } export default App默认与状态提升后的状态图:

默认与状态提升
最后更新于