2016-06-24 15 views
5

के कार्यों जनक घटक के कार्यों के लिए तर्क के रूप में बाल अवयव पासिंग और रेंडर करने के लिए काम नहीं करता हैयह संभव एक तर्क के रूप में घटक प्रतिक्रिया पारित करने के लिए एक कंटेनर घटक

//React Container Component 
//Import Both Views and Render based on preference 
import PosterView from "./PosterView" 
import ListView from "./ListViewCard" 

... 

renderCardsBasedOnType(cardType){ 
    if(cardType === "poster"){ 
    return this.renderCards(PosterView) 
    }else{ 
    return this.renderCards(ListViewCard) 
    } 
} 
renderCards(component){ 
    let cards = this.props.list.map(function(cardData){ 
    return <component data={cardData}/> 
    }) 
    return cards 
} 
render(){ 
    let cards = this.renderCardsBasedOnType("poster") 
    return <div>{cards}</div> 
} 
...... 

उत्तर

9

component के बजाय Component प्रयास करें कोशिश कर के बीच में है। प्रतिक्रिया के लिए जेएसएक्स टैग के लिए एक अपरकेस की आवश्यकता है:

renderCards(Component){ 
    let cards = this.props.list.map(function(cardData){ 
    return <Component data={cardData}/> 
    }) 
    return cards 
} 
+1

वाह। इसके लिए धन्यवाद! मैंने यह पता लगाने की कोशिश में दो घंटे बर्बाद कर दिया कि मेरा घटक क्यों प्रस्तुत नहीं हुआ। यह नौकरी करता है। बहुत बुरा है कि अनुशंसित जेएस शैली के बाद सूक्ष्म दुष्प्रभाव हैं ... – Form

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