2017-04-04 33 views
0

我有2个屏幕屏幕A和屏幕B,每个页面都有不同的api调用以获取要在页面中呈现的数据。 从屏幕A到B屏我推入堆栈使用 this.props.navigator.push({id: 'goToScreenB'}); 和后退按钮用户点击将进入画面B使用this.props.navigator.pop(); 到屏幕上时,用户从画面B回到屏幕我要让API调用以获得新的数据,最初的API将被称为componentWillMount如何从屏幕B弹出屏幕A时调用componentWillMountReact-Native - 在执行弹出操作时重新载入数据和重新渲染组件

回答

-1

我不能确定没有您的代码。但可能当你回到屏幕componentWillMount将被调用。

您可以放置​​一个console.log()并查看它是否被调用。如果它没有被调用,你应该使用componentWillUpdate()

+0

screenA componentWillMount不是通过使用screenB中的pop()调用的,当我弹出窗体时调用componentWillReceiveProps()screenB有没有任何方法来识别我从这个屏幕B这样我可以做一些特殊的操作。我的道具默认具有导航器对象。是否可以在执行'this.props.navigator.pop();时使用道具发送一个更多的键,如{'navigator':{},'popfrom':'screen B'}; –