मैं अपना "स्मार्ट" पॉपअप घटक बनाने की कोशिश करता हूं, जो अपने आप में कुछ घटकों को खोल सकता है, लेकिन मेरा अहसास अच्छा नहीं है, क्योंकि यह काम नहीं करता है।मैं जेएसएक्स प्रारूप के बिना प्रतिक्रिया घटकों को कैसे प्रस्तुत कर सकता हूं?
मैं पॉपअप बनाने के लिए रेडक्स दृष्टिकोण का उपयोग करता हूं और पॉपअप खोलने की क्रिया पॉपअप खुलने से पहले प्रतिपादन के लिए किसी भी घटक का नाम प्राप्त करने में सक्षम होता है;
लेकिन मैं मैं चुन सकते हैं और नाम nameOfComponent साथ घटक रेंडर करने के लिए की जरूरत है कुछ समस्या, पैरामीटर प्राप्त करने के बाद, हमारे मामले में यह nameOfComponent है है,।
और अब मेरा प्रश्न है, यह सरणी से घटक कैसे प्रस्तुत कर सकता है?
// He's my components
import Login from '../Login/login.js';
import Logout from '../Logout/logout.js';
const popupContent = {
Login : Login,
logout: Logout
};
// My component
class Popup extends Component {
componentDidUpdate() {
// for example
const nameOfComponent = "Login";
this.body = this.setBodyPopup(nameOfComponent);
return true;
}
setBodyPopup(property){
return popupContent[property];
}
render() {
// I want to render some element from popupContent here
<div>
// <this.body /> // it's jsx format
{this.body}
</div>
}
}
मैं तुम्हें क्यों 'का उपयोग कर रहे componentDidUpdate', मुझे लगता है कि आप इस मामले में निर्माता का उपयोग कर सकते पता नहीं है - https://jsfiddle.net/69z2wepo/36027/ –
क्योंकि मेरी पॉपअप कर सकते हैं एक और सामग्री के साथ उद्घाटन , जो प्रोप के माध्यम से पारित किया। मेरे पास स्पा के लिए एक पॉपअप है। –