As described in this blog post,命名导出在访问redux存储时出现问题。这是完全不可能的吗,或者我是否可以对我的组件做一些操作,以允许它保留为命名导出,并仍然访问redux存储?
我将已命名的导出更改为默认导出(并更改了导入),我的组件正在工作并访问redux状态。我这么问只是因为我想让我的组件按照一个统一的标准进行编码,而且我还有其他所有的东西,比如命名导出。
发布于 2019-03-19 04:57:20
我想你误解了那篇文章的内容。命名导出没有阻止组件访问Redux存储的任何内容。
它说的是,这是编写连接组件的常见模式:
// named export for the "plain" component
export class MyComponent extends React.Component {}
// default export for the "connected" wrapper
export default connect()(MyComponent)与代码库的任何部分一样,您需要编写与从其他文件中导出变量的方式相匹配的导入语句。因此,在本例中,如果您希望使用连接的包装器组件,则需要执行默认导入:import TheConnectedComponent from "./MyComponent"。
然而,这样做也是完全可以的:
// named export for the plain component
export class MyComponent extends React.Component {}
// ALSO a named export for the connected wrapper
export const ConnectedMyComponent = connect()(MyComponent);在这种情况下,您的消费文件将需要执行import {ConnectedMyComponent} from "./MyComponent"。
因此,这不是关于“使用Redux的命名导出”-而是确保您以匹配的方式导入和导出变量。
https://stackoverflow.com/questions/55224297
复制相似问题