异步获取数据后,进行了一下处理,子组件无法接收到props的值
来源:15-3 PC 端详情页面开发(下)
qq_Wonderful_8
2017-12-18
老师您好,之前提问过,代码不清晰,这次又重新发了一遍:
我想通过在首页在点击不同的新闻后,在详情页的右侧展示同类新闻的图片(例:点的是娱乐类新闻就展示娱乐类行文;国际类新闻就展示国际类新闻)
如图1所示,假设我点击了娱乐,将娱乐处理后,把“yule”赋给了newsType(我在constructor中已经定义好了);
接下来,如图2所示,我在render方法中{this.state.newsType},页面可以出现yule的字段,可是,将它赋给了子组件的props.type后,在子组件接收到的值为空!这是为什么呢?应该如何解决呢
写回答
1回答
-
Parry
2017-12-18
同学你好,我大概能看出你错误的原因了。
你的获取方法在 componentDidMount 中,此时页面已加载完毕,你再去修改 state 的值,子组件是不会再次渲染的。
你将方法放在
constructor() 或者
componentWillMount()
中测试一下,因为看不到你完整代码,猜测应该是这个原因。
012017-12-18
相似问题