如果在redux base react native应用程序上收到推送通知时如何重新加载listview?
我已经编写了用于在App.js文件上接收推送通知的逻辑。我的列表视图在Home.js中的位置
我正在寻找一种从App.js
触发方法名称refreshList()的方法答案 0 :(得分:0)
如果您使用redux,则订单应该非常明确:
接收数据。
使用数据发送操作(可能是SET_PUSH_DATA)。
假设您的组件已连接到redux,并假设我在您的监听器中:
this.props.yourActionName({
type: "YOUR_ACTION_TYPE",
payload: yourNewData
});
case "YOUR_ACTION_TYPE":
return {...state, yourListVariable: action.payload}
获取容器组件中mapStateToProps的列表。
const mapStateToProps =({YourListReducer})=> { return {list:YourListReducer.list}; }
一旦redux更新了其状态,您将在容器组件中获得一个新的prop值,因此,这将触发组件更新周期,并且将使用新数据在组件中触发渲染,因此您不会需要在App.js上使用refreshList(),因为redux将为您处理更新。