arn*_*ird 4 react-native react-navigation react-native-tabnavigator
当我用...运行模拟器时
react-native run-ios
Run Code Online (Sandbox Code Playgroud)
...我在终端中看到一条消息,指出“ TabNavigator已过时。请使用createBottomTabNavigator ...”
但是,我不认为TabNavigator已被弃用,我也不认为createBottomTabNavigator存在于Web或现实中。除此之外,一切都很好!除了我无法运行我的应用程序。因为我收到此红屏错误,提示React Navigation出现了问题:
undefined is not a function (near '...(0 , _reactNavigation.TabNavigator)...')
Run Code Online (Sandbox Code Playgroud)
其他情况:在我弹出一个expo应用程序之后,这些问题开始出现,然后尝试通过创建一个新应用程序(create-react-native-app)并将其自定义代码移至新应用,从git commit弹出之前。我还必须在模拟器中更新Expo客户端。我不确定这是否是相关信息,但是在退出之前,我没有看到此消息,表明不推荐使用TabNavigator。
React Navigation文档没有暗示可能不推荐使用TabNavigator:https : //reactnavigation.org/docs/tab-based-navigation.html
这是终端输出,其中包含一条消息,指示已弃用TabNavigator:
得到了同样的错误
修复=
change import { TabNavigator } from 'react-navigation'
Run Code Online (Sandbox Code Playgroud)
至
import { createBottomTabNavigator } from 'react-navigation'
Run Code Online (Sandbox Code Playgroud)
...
const MainNavigator = createBottomTabNavigator({
welcome: { screen: WelcomeScreen },
auth: { screen: AuthScreen },
});
Run Code Online (Sandbox Code Playgroud)
TabNavigator 在 React Navigation v1 中并未被弃用。但是,因为我像这样在 package.json 中引用了react-navigation...
"react-navigation": "git+https://github.com/react-community/react-navigation.git",
Run Code Online (Sandbox Code Playgroud)
我正在拉取最新的代码,在某个时候(大概是昨天)这个参考开始拉入 React Navigation 的 v2,而不是 v2,导致奇怪的“已弃用”消息以及我的问题中提到的错误。
此处提供了解决方案: https ://github.com/expo/expo/issues/1596#issuecomment-378424966
| 归档时间: |
|
| 查看次数: |
5659 次 |
| 最近记录: |