wix react native navigation registerComponent React未定义

Posted

技术标签:

【中文标题】wix react native navigation registerComponent React未定义【英文标题】:wix react native navigation registerComponent React is not defined 【发布时间】:2022-01-16 02:56:59 【问题描述】:

在 react-native-navigation 7.14.0 中,Navigation.registerComponentWithRedux 已被弃用,它表明 registerComponentWithRedux 已被弃用,并将在下一个版本中删除!请改用 Navigation.registerComponent。访问文档以获取更多信息https://wix.github.io/react-native-navigation/api/component#registering-a-component-wrapped-with-providers

import  Provider  from 'react-redux';
const store = createStore();

Navigation.registerComponent(`navigation.playground.MyScreen`, () => (props) =>
  <Provider store=store>
    <MyScreen ...props />
  </Provider>,
  () => MyScreen)
);

它与 registerComponentWithRedux 一起工作正常,并带有已弃用的警告。为了消除警告,我将 registerComponentWithRedux 更改为以下内容,它在使用 React 未定义 启动的应用程序上崩溃。是我做错了什么,还是 redux 提供程序的 registerComponent 存在错误?

import  Navigation  from 'react-native-navigation';
import  Provider  from 'react-redux';

Navigation.registerComponent(ScreenEnum.HOME_SCREEN, () => (props) =>
<Provider store=store>
  <HomeScren ...props />
</Provider>,
() => HomeScren);

【问题讨论】:

【参考方案1】:

试试:

import React from 'react';
import  Navigation  from 'react-native-navigation';
import  Provider  from 'react-redux';

Navigation.registerComponent(ScreenEnum.HOME_SCREEN, () => (props) =>
<Provider store=store>
  <HomeScreen ...props />
</Provider>,
() => HomeScreen);

还要注意在您的第二个示例中您的 HomeScreen 组件拼写错误。

【讨论】:

谢谢,带来import React from 'react'; 工作,很好地抓住了拼写错误的 HomeScren,但这只是拼写错误,而不是导致崩溃的原因。除了在这里导入之外,没有看到代码中的任何地方都在使用 React,您介意解释一下发生了什么吗?

以上是关于wix react native navigation registerComponent React未定义的主要内容,如果未能解决你的问题,请参考以下文章

wix-react-native-navigation v2 statusBar 不工作

React Native Navigation v2 (wix) 禁用 TopBar

wix react native navigation registerComponent React未定义

React-Native-Navigation (WIX):如何更新底部标签的徽章计数?

我可以将 wix/react-native-navigation 创建的根组件包装在 ApolloProvider 组件中吗

WIX React-native-navigation v2 不会调用 registerAppLaunchedListener()