使用 forwardRef 在 React Native/Router Flux 上执行 this.function



我实际上正在更新一个包含以下代码的应用程序:

路线.js

<Scene key='events' component={Events} title='Brief'/>

事件/索引.js

static onEnter() {
Actions.refs.events.getWrappedInstance().refreshScene()
}
refreshScene = () => {
this.setState({any: true})
}
export default connect(mapStateToProps,
{
...
}, null, {withRef: true})(Events)

但是现在,最新版本的路由器通量不再接受Ref。必须替换为 forwardRef。

所以

export default connect(mapStateToProps,
{
...
}, null, {forwardRef: true})(Events)

将不再允许 Actions.refs.events.getWrappedInstance((.refreshScene((而且我无法让我的刷新场景((再次工作。

关于如何解决这种情况的任何线索?

react-native-router-flux 似乎自 4.0.0 版以来已经删除了Actions.refs功能

一位贡献者对这个问题的评论建议:

  • 要么使用 HOC
  • 使用 Redux 在组件中传递相同的方法
  • 要么使用你的方法作为道具,然后以这种方式做这个技巧

这是更新日志

最新更新