我仍然对react + redux和ES6感兴趣。我正在尝试实现socketio,我遇到了必须导出socketio连接我的redux连接的问题。
redux connect
export default connect(mapStateToProps, matchDispatchToProps)(UserList);
socketio connect
export default socketConnect(App);
问题 使它们协同工作的正确语法是什么?
答案 0 :(得分:14)
您不能拥有多个默认导出。
相反,请使用命名导出。
// moduleName.js
export const ConnectedUserList = connect(mapStateToProps, matchDispatchToProps)(UserList)
export const RealTimeApp = socketConnect(App);
按名称要求出口。
// otherModule.js
import { ConnectedUserList, RealTimeApp } from "./moduleName"
答案 1 :(得分:6)
您可以混合默认导出和命名导出。
export default ConnectedUserList = connect(mapStateToProps, matchDispatchToProps)(UserList)
export const RealTimeApp = socketConnect(App);
然后,您可以导入导出:
import ConnectedUserList, { RealTimeApp } from "./moduleName"
答案 2 :(得分:3)
oldest_president = presidents[presidents['Life Days'] == presidents['Life
Days'].max()]
oldest_president
[![enter image description here][2]][2]
答案 3 :(得分:-1)
我未曾提及的一种可能性。您只能具有一个默认导出,但是导出的对象可以是具有多个成员的对象:
// MyModule.js
const componentA => () => {return <div>Component A</div>;}
const componentB => () => {return <div>Component B</div>;}
export default { componentA, componentB };
然后:
import MyModule from "./MyModule";
MyModule.componentA();