gpb*_*lio 3 javascript reactjs
我是React钩子的新手,但我在文档中看不到这一点:
const MyComponent = ({myProp}) => {
const [myPropHook, setPropHook] = useState(myProp)
...
}
Run Code Online (Sandbox Code Playgroud)
我想知道这是否是一个好习惯?
您传递给的值将useState
用作状态变量的起始值。因此,当组件属性更改时,它们不会影响您正在使用的状态变量。初始值将是发送到该组件的第一个道具,此后只能使用该setPropHook
函数进行修改。
简而言之,使用props作为初始化程序绝对是一种代码味道,useState
因为读取代码不能正确传达实际发生的事情。