2016-12-18 3 views
1

나는 반응하고 감수하는 데 약간 새로운 것이지만 꽤 많은 발전을 이루었다. 지도 상태를 redux로 연결하여 소품을 사용하고 있습니다. 나는이 상황에 도착할 때까지, 매력처럼 작동되었다 :부모의 ReactClass가 아닌 반응 중첩 된 구성 요소?

부모 구성 요소가 여기 mapStateToProps를 사용하고,하면에 대한 소스 코드 :

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) 
: 여기
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) 

가 중첩 된 요소에 대한 코드입니다

Warning: React.createElement: type should not be null, undefined, boolean, or number. It should be a string (for DOM elements) or a ReactClass (for composite components). Check the render method of ParentElement .

어떻게 생각 : 나는 부모 요소를 표시 할 때

, 나는이 오류 누락/잘못 했나요? 이 같은

답변

2

가져 오기 헤더 파일 : - 괄호없이

import NestedComponent from './NestedComponent' 

.

클래스를 기본값으로 내보낼 때 파일에 기본 클래스가 하나만 있기 때문에 중괄호를 사용하지 않고 가져 오지만 클래스를 기본값없이 내보내는 경우 중괄호로 가져올 수 있습니다. 파일에 내보내기 키워드가있는 하나의 클래스 (es6 규칙).

+0

대답은 정확하지만 (+1), 답을 수정하여 왜/어떻게이 문제를 해결했는지 설명하고 싶습니까? – Scimonster

관련 문제