2017-02-19 6 views
6

कोड के नीचे देता हैआपको कनेक्ट करके लौटाए गए फ़ंक्शन में एक घटक पास करना होगा। इसके बजाय प्राप्त अपरिभाषित

Uncaught Error: You must pass a component to the function returned by connect. Instead received undefined

List.js

import React from 'react'; 
import { connect, bindActionCreators } from 'react-redux'; 
import PostList from '../components/PostList'; // Component I wish to wrap with actions and state 
import postList from '../Actions/PostList' //Action Creator defined by me 

const mapStateToProps = (state, ownProps) => { 
    return state.postsList 
} 

const mapDispatchToProps = (dispatch) => { 
    return bindActionCreators({"postsList":postList},dispatch) 
} 

export default connect(mapStateToProps, mapDispatchToProps)(PostList); 

PostList.js

import React from 'react' 

export const PostList = (props) => { 
    return <div>List</div> 
} 

कृपया मुझे एक समाधान के साथ मदद?

+1

जांच Postlist आयात –

+0

PostList आयात –

+2

साथ कोई समस्या नहीं है क्या आप वाकई या तो निर्यात डिफ़ॉल्ट की जरूरत नहीं है कर रहे हैं या '..comcoments/PostList' से आयात {PostList}; – noveyak

उत्तर

7

आप import PostList from '../components/PostList'; कर रहे हैं इसलिए आपको अपनी पोस्टलिस्ट.जेएस फ़ाइल में export default का उपयोग करने की आवश्यकता है।

अन्यथा आपको import { PostList } from '../components/PostList'; करना होगा।

करने के लिए जो कोई भी रुचि है, यहाँ ES6 आयात/निर्यात सिंटैक्स के बारे में एक अच्छा लेख है: http://www.2ality.com/2014/09/es6-modules-final.html

+0

मेरे मामले में, मैंने कोड को दूसरे घटक से कॉपी किया था और सब कुछ बदल दिया 'propTypes 'घोषणा में नाम – Snailer

संबंधित मुद्दे

 संबंधित मुद्दे