在react+dva 开发的时候,遇到了一些小问题在此总结,希望有用
问题:想用全局model保存的state来给组件state一个初始值,但组件中取不到登录后异步获取的用户信息。但在组件使用时render中可以console出需要的值
解决办法就是
1、render 中 获取到想要的值 然后 setState
但直接在render中使用setState很明显是会出错的,修改状态触发重新渲染,渲染中修改状态,又重渲染的死循环setState -> render -> setState -> render... ...
2、在父组件中获取到这个值之后 , 再加载这个子组件 ,然后子组件初始的时候就能获取到这个值
{
modelName.show && <ComponentName/>
}
//或者
{
modelName.show ? <ComponentName/> : null
}
标签: js部分前端front