用redux命名出口?

时间:2019-01-30 20:53:11

标签: reactjs redux react-redux

我已经习惯使用命名的导出,因为它使重构的工作更加轻松。我刚刚开始实现redux,但似乎无法执行命名导出,因为连接需要映射该组件。

例如

class Something extends Component { ... }

export default connect(mapStateToProps)(Something);

是否可以使用诸如“ Something”之类的命名导出,我不能将导出放置在类上,因为反应继续起作用-连接未导出,因此没有redux状态

有什么想法吗?

预先感谢

3 个答案:

答案 0 :(得分:2)

只需将其分配给const并按如下所示导出即可:

class Something extends Component { ... }

export const ConnectedSomething = connect(mapStateToProps)(Something);

然后您可以像这样导入它:

import { ConnectedSomething } from './....'

答案 1 :(得分:1)

如果我的理解正确,则可以通过命名的export导出“ redux connected”组件,如下所示:

/*
Declare component class, with class name differing from named export
*/
class SomethingComponent extends Component { ... };

/*
Export redux connected HOC to external modules, via named export "Something"
*/
export const Something = connect(mapStateToProps)(SomethingComponent);

答案 2 :(得分:0)

我建议使用[folder] /index.ts:

export { default as SomethingComponent } from './SomethingComponent.tsx';

[文件夹] /SomethingComponent.tsx:

class SomethingComponent {}

export default SomethingComponent;

AnyComponent.tsx:

import { SomethingComponent } from '[folder]';