javascript - 每个模块只允许一个默认导出”,但只显示一个
问题描述
我有一个根“App.js”,它只包含一个“导出默认值”。它以前工作得很好(它主要只是使用 React Navigation 的应用程序的路由功能)。但是我需要查看标签何时聚焦所以我尝试实现这个库:https ://github.com/pmachowski/react-navigation-is-focused-hoc
现在,当我加载应用程序时,它给了我这个错误:
'无法加载 192.168 ..... 错误:../../src/App.js:每个模块只允许一个默认导出'
但我相信我只有一个;这是 App.js:
import React from 'react';
import { createBottomTabNavigator,createStackNavigator } from 'react-navigation';
import { updateFocus, getCurrentRouteKey } from 'react-navigation-is-focused-hoc'
import SearchTab from './components/Tabs/SearchTab';
import HomeTab from './components/Tabs/HomeTab';
import ScannerTab from './components/Tabs/ScannerTab';
import SettingsTab from './components/Tabs/SettingsTab';
import Ionicons from 'react-native-vector-icons/Ionicons';
import StockModal from './components/Modals/StockModal';
const MainStack = createBottomTabNavigator(
{
Home: HomeTab,
Search: SearchTab,
Scanner: ScannerTab,
Settings: SettingsTab,
//Todo: Total overlay modals HERE
},
{
navigationOptions: ({ navigation }) => ({
tabBarIcon: ({ focused, tintColor }) => {
const { routeName } = navigation.state;
let iconName;
if (routeName === 'Home') {
iconName = `ios-information-circle${focused ? '' : '-outline'}`;
} else if (routeName === 'Settings') {
iconName = `ios-options${focused ? '' : '-outline'}`;
}else if (routeName === 'Scanner') {
iconName = `ios-barcode${focused ? '' : '-outline'}`;
}else if (routeName === 'Search') {
iconName = `ios-search${focused ? '' : '-outline'}`;
}
return <Ionicons name={iconName} size={25} color={tintColor} />;
},
}),
tabBarOptions: {
activeTintColor: 'tomato',
inactiveTintColor: 'gray',
},
}
);
DefaultStack = createStackNavigator(
{
Main: {
screen: MainStack,
},
QuickStockScreen: {
screen: StockModal,
},
},
{
mode: 'modal',
headerMode: 'none',
}
);
export default class App extends React.Component {
render() {
return (
<DefaultStack
onNavigationStateChange={(prevState, currentState) => {
// If you want to ignore the state changed from `DrawerNavigator`, use this:
/*
if (/^Drawer(Open|Close|Toggle)$/.test(getCurrentRouteKey(currentState)) === false) {
updateFocus(currentState)
return
}
*/
updateFocus(currentState)
}}
/>
)
}
}
还; 我解决此问题的另一种方法是当 React Navigation 中的选项卡聚焦时,另一个更“最新”的库或接收道具或状态的方法;即使从他们自己的问题线程来看,该方法也很混乱且不清楚。
Failed to load bundle(http://192.168.0.10:8081/index.bundle?platform=ios&dev=true&minify=false) with error:(SyntaxError: /Users/kenji/StockManager/src/App.js: Only one default export allowed per module. (73:0)
[0m [90m 71 | [39m}[0m
[0m [90m 72 | [39m[0m
[0m[31m[1m>[22m[39m[90m 73 | [39m[36mexport[39m [36mdefault[39m [33mRootStack[39m [33m=[39m createStackNavigator([0m
[0m [90m | [39m[31m[1m^[22m[39m[0m
[0m [90m 74 | [39m {[0m
[0m [90m 75 | [39m [33mMain[39m[33m:[39m {[0m
[0m [90m 76 | [39m screen[33m:[39m [33mMainStack[39m[33m,[39m[0m (null))
__38-[RCTCxxBridge loadSource:onProgress:]_block_invoke.248
RCTCxxBridge.mm:422
___ZL36attemptAsynchronousLoadOfBundleAtURLP5NSURLU13block_pointerFvP18RCTLoadingProgressEU13block_pointerFvP7NSErrorP9RCTSourceE_block_invoke.118
__80-[RCTMultipartDataTask URLSession:streamTask:didBecomeInputStream:outputStream:]_block_invoke
-[RCTMultipartStreamReader emitChunk:headers:callback:done:]
-[RCTMultipartStreamReader readAllPartsWithCompletionCallback:progressCallback:]
-[RCTMultipartDataTask URLSession:streamTask:didBecomeInputStream:outputStream:]
<redacted>
<redacted>
<redacted>
<redacted>
_dispatch_client_callout
_dispatch_block_invoke_direct
_dispatch_client_callout
_dispatch_block_invoke_direct
dispatch_block_perform
<redacted>
_dispatch_client_callout
_dispatch_continuation_pop
_dispatch_async_redirect_invoke
_dispatch_root_queue_drain
_dispatch_worker_thread3
_pthread_wqthread
start_wqthread
解决方案
所以我怀疑这是文件权限或类似问题的奇怪问题。我正在运行 hackintosh 以使用 xcode 开发 iOS,而真实设备测试和启动可能很奇怪;例如,加载关闭时“暂停”的内容有时不会正确运行。
情况就是这样,在适当的死重启后它修复了。在我恢复对 App.js 的更改后,我意识到这是一个问题,并且仍然显示完全相同的问题。
推荐阅读
- xcode - 无法在 Xcode12 中使用框架扩展视图头文件
- sapui5 - 选择后关闭表格中的 MultiComboxBox
- python - Windows - 找到焦点窗口并处理焦点更改事件
- ios - Agora 语音通话在后台听不到 如果我没有在后台模式中选择音频或 VOIP
- r - 尝试用其并行处理表亲替换 R 基函数(带有跟踪函数)
- c# - 如何验证 textBox.Text 的第三个字符
- eclipse - Maven 在 AnyPoint 工作室中设置“库不可用”错误
- sockets - hololens 2 tcp 客户端 - 访问权限
- flutter - Flutter Transform 不限制父级大小
- .net - .net5.0 是否已经支持 tls1.3?