关于useState()设置初始值不生效的问题
问题:
函数组件中 从props获取父组件传过来的数据 在某次操作后需要在调用一次后端的接口 更改这个数据值
解决方法
在函数组件中通过 useState()方法 记录数据发生变化后的值
因为父组件传过来的数据 选择 useState()方法在初始化的时候会是空值
这时候结合 useEffect() 方法 监控父组件传过来的数据值
具体做法
export default App function(props){
const {detailInfo} = props
const [collateralInfo,setCollateralInfo] = useState([...detailInfo])
//这时候打印collateral会是空值
useEffect(()=>{
setCollateralInfo([...detailInfo])
},[detailInfo])
//这里打印collateralInfo就可以打印值
....
}
完美解决