Javascript react redux嵌套组件不是父级中的ReactClass?
我对react和redux有点陌生,但取得了很大的进步。 我正在使用redux connect将状态映射到道具。在我遇到这种情况之前,我一直很有魅力: 父组件正在使用MapStateTops,下面是它的源代码:Javascript react redux嵌套组件不是父级中的ReactClass?,javascript,reactjs,redux,Javascript,Reactjs,Redux,我对react和redux有点陌生,但取得了很大的进步。 我正在使用redux connect将状态映射到道具。在我遇到这种情况之前,我一直很有魅力: 父组件正在使用MapStateTops,下面是它的源代码: import React from 'react'; import { connect } from 'react-redux' import { NestedComponent } from './NestedComponent' class ParentElement extend
import React from 'react';
import { connect } from 'react-redux'
import { NestedComponent } from './NestedComponent'
class ParentElement extends React.Component {
render() {
return (
<div className="App">
<NestedComponent/>
</div>
);
}
}
const mapStateToProps = state => {
const { questions } = state
return {
questions
}
}
ParentElement.contextTypes = {
router: React.PropTypes.object.isRequired
}
export default connect(mapStateToProps)(ParentElement)
从“React”导入React;
从“react redux”导入{connect}
从“./NestedComponent”导入{NestedComponent}
类ParentElement扩展了React.Component{
render(){
返回(
);
}
}
常量mapStateToProps=状态=>{
常量{问题}=状态
返回{
问题
}
}
ParentElement.contextTypes={
路由器:React.PropTypes.object.isRequired
}
导出默认连接(MapStateTops)(ParentElement)
以下是嵌套元素的代码:
import React from 'react';
import { connect } from 'react-redux'
class NestedComponent extends React.Component {
render() {
return (
<div> I am nested</div>
);
}
};
const mapStateToProps = state => {
const { questions } = state
return {
questions
}
}
NestedComponent.contextTypes = {
router: React.PropTypes.object.isRequired
}
export default connect(mapStateToProps)(NestedComponent)
从“React”导入React;
从“react redux”导入{connect}
类NestedComponent扩展了React.Component{
render(){
返回(
我是嵌套的
);
}
};
常量mapStateToProps=状态=>{
常量{问题}=状态
返回{
问题
}
}
NestedComponent.contextTypes={
路由器:React.PropTypes.object.isRequired
}
导出默认连接(MapStateTops)(嵌套组件)
当我尝试显示父元素时,出现以下错误:
警告:React.createElement:类型不应为null,未定义,
布尔值,或数字。它应该是字符串(对于DOM元素)或
ReactClass(用于复合组件)。检查的渲染方法
ParentElement
我遗漏了什么/做错了什么?像这样导入头文件:-
import NestedComponent from './NestedComponent'
没有支架
当一个类作为默认类导出时,它将不带大括号导入,因为文件中只有一个默认类;但是,当该类在不带默认值的情况下导出时,您必须带大括号导入它,因为文件中可能有多个类带有导出关键字(es6约定)。答案正确(+1),但是,您是否愿意在回答中解释为什么/如何解决问题?