reactjs - React Native 错误 - 未定义不是函数(评估“(0 _reactnavigation.switchnavigator)”)
问题描述
我收到此错误:未定义不是函数(正在评估“(0 _reactnavigation.switchnavigator)”)
我正在使用此链接构建一个 React Native 模板:https ://medium.com/react-native-training/react-native-firebase-authentication-7652e1d2c8a2
这是我的 App.js 文件:
import React from 'react'
import { StyleSheet, Platform, Image, Text, View } from 'react-native'
import { SwitchNavigator } from 'react-navigation'
// import the different screens
import Loading from './Loading'
import SignUp from './SignUp'
import Login from './Login'
import Main from './Main'
// create our app's navigation stack
const App = SwitchNavigator(
{
Loading,
SignUp,
Login,
Main
},
{
initialRouteName: 'Loading'
}
)
export default App
我的 package.json 文件显示:
"dependencies": {
"react": "16.6.3",
"react-native": "0.58.0-rc.2",
"react-native-firebase": "^5.2.0",
"react-navigation": "^3.3.2"
}
解决方案
阅读 Do react-navigation 的文档。这里是链接。改成这样
import React from 'react'
import { StyleSheet, Platform, Image, Text, View } from 'react-native'
import { createSwitchNavigator } from 'react-navigation' /////change here
// import the different screens
import Loading from './Loading'
import SignUp from './SignUp'
import Login from './Login'
import Main from './Main'
// create our app's navigation stack
const App = createSwitchNavigator ( ///////// change here
{
Loading,
SignUp,
Login,
Main
},
{
initialRouteName: 'Loading'
}
)
export default App
推荐阅读
- c++ - 在 C++ 中强制转换为 int8_t* 意味着什么?
- java - 有什么方法可以获取 XMLPullParser 函数的进度吗?
- git - 两个人可以在没有维护者权限的情况下将代码提交到同一个 PR 吗?
- python - Pandas 错误“只能比较标记相同的 DataFrame 对象”
- node.js - Node.JS + Apache - 无法获取
- r - 选择一个样本来匹配另一个数据集中的变量分布
- docker - 从 docker 连接到 office365 SMTP 时出现异常
- javascript - 如果我在每个 css 和 js 文件上使用 .min 方法来保护我的代码,这是否正常?
- typescript - 对函数返回值进行更严格的对象文字赋值检查?
- c# - Win2D 的 DrawText() 和 DrawTextLayout() 方法有什么区别?