javascript - createSwitchNavigator - TypeError:无法将类作为函数调用
问题描述
尝试插入时收到此错误createSwitchNavigator()
消息createAppContainer()
。
TypeError: Cannot call a class as a function
我的代码 - router.js
export const RootNavigator = (signedIn = false) => {
return createSwitchNavigator(
{
SignedIn: {
screen: SignedIn
},
SignedOut: {
screen: SignedOut
}
},
{
initialRouteName: signedIn ? "SignedIn" : "SignedOut"
}
);
};
export const createRootNavigator = createAppContainer(RootNavigator());
index.js
import { createRootNavigator } from "./router";
/**/
const Layout = createRootNavigator(signedIn);
解决方案
您正在尝试返回一个函数,createAppContainer
但它需要一个实例create*Navigator
要么将其用作
export const RootNavigator = createSwitchNavigator(
{
SignedIn: {
screen: SignedIn
},
SignedOut: {
screen: SignedOut
}
},
{
initialRouteName: signedIn ? "SignedIn" : "SignedOut"
}
)
或者
export const createRootNavigator = createAppContainer(RootNavigator());
编辑
createRootNavigator
作为方法调用
export function createRootNavigator (signedIn) {
return createAppContainer(RootNavigator(signedIn));
}
index.js
const Layout = createRootNavigator(signedIn);
推荐阅读
- apache-kafka - 启用rocksdb压缩后不正确的ktable聚合
- javascript - Get the highlighted/selected text in CKEDITOR 5
- python - 使用python中的命令在windows中压缩文件
- r - 如何在 R 中使用多列进行累积总和?
- pine-script - 未声明的标识符“shigh”;交易视图(pinescripts)
- python - 在 FB-Prophet 上处理不同的数据频率
- ios - React Native App 未安装在 ios 模拟器中
- android - 当输入类型是android中的文本时如何在editText中隐藏下划线
- python - 通过 Jenkins 使用 FTP 将文件下载到远程服务器时出现权限被拒绝错误
- amazon-web-services - NAT 网关是否需要 Internet 网关?