【发布时间】:2020-03-10 16:03:21
【问题描述】:
我有它的工作:
export class FormAuto extends React.PureComponent {
constructor(props) {
...
}
....
}
我这样导入组件:import { FormAuto } from './FormAuto'
但我想这样做,使用来自 redux 的connect:
class FormAuto extends React.PureComponent {
constructor(props) {
...
}
....
}
export default connect(mapStateToProps, mapDispatchToProps)(FormAuto);
但我有这个错误:
模块 ../../FormAuto 没有导出的成员 'FormAuto'
如果我像这样导入组件:import FormAuto from './FormAuto'
该组件不再显示。
你能帮帮我吗?
【问题讨论】:
-
你是如何导入组件的
-
我认为这取决于您导入组件的方式,对于第二次导入,您不应将其包裹在花括号中:import FormAuto from "your/path";
-
“组件不再显示”有错误吗?
-
根据您的地图状态到道具,您不需要纯组件。如果地图状态类似于
mapStateToProps=state({prop:{new:reference}}),它将为每个渲染的道具创建一个新的引用,并且纯组件将无法看到没有任何变化。如果你想获得最好的结果,你可以考虑重新选择,这也会阻止你重复逻辑,例如mapStateToProps=state=>{a:state.a}你可以在多个地图状态函数中重复state.a。或者,如果您计算值,您可以在地图状态函数中重复它们。
标签: reactjs components