मैं इसे ऐतिहासिक उद्देश्यों के लिए यहाँ छोड़ रहा हूँ, कृपया कुछ समय के लिए प्रतिक्रिया में विकसित होने के बाद एक बेहतर समाधान के लिए मेरे संपादन नीचे देखें,
मैंने एक NgIf घटक का निर्माण किया (यह प्रतिक्रिया मूल है, लेकिन शायद प्रतिक्रिया के लिए काम करता है)
कोड:
import React, {Component} from "react";
class NgIf extends Component {
render() {
if (this.props.show) {
return (
this.props.children
);
} else {
return null
}
}
}
export default NgIf;
उपयोग:
...
import NgIf from "./path/to/component"
...
class MyClass {
render(){
<NgIf show={this.props.show}><Text>This Gets Displayed</Text></NgIf>
}
}
Im यह करने के लिए नया तो शायद पर सुधार किया जा सकता है, लेकिन मुझे अपने कोणीय से संक्रमण में मदद करता है
संपादित करें
बेहतर अनुभव के लिए नीचे दिए गए संपादनों को एक बार देखें
नीचे जे की टिप्पणी के लिए धन्यवाद, एक महान विचार यह भी है:
render() {
<View>{this.props.value ? <Text>Yes</Text> : <Text>No</Text>}</View>
}
या
render() {
<View>{this.props.value && <Text>Yes</Text>}</View>
}
कुछ अन्य उत्तरों के समान लेकिन इनलाइन काम करता है, पूरे रेंडर ब्लॉक / फंक्शन का उपयोग करने के बजाय, एक विशेष घटक की आवश्यकता नहीं होती है, और आप टर्नरी ऑपरेटर के साथ एक अन्य विवरण का उपयोग कर सकते हैं। अगर उनके मूल वस्तु मौजूद नहीं है तो प्लस स्टेटमेंट में निहित आइटम में कोई त्रुटि नहीं है। यानी अगर props.value
मौजूद नहीं है, तो props.value.value2
एक त्रुटि नहीं होगी।
इस उत्तर को देखें https://stackoverflow.com/a/26152067
संपादित करें 2:
उपरोक्त लिंक ( https://stackoverflow.com/a/26152067) के अनुसार ) के अनुसार और रिएक्शन ऐप्स को विकसित करने के लिए बहुत अधिक अनुभव के बाद, उपरोक्त तरीके से चीजों को करने का सबसे अच्छा तरीका नहीं है।
प्रतिक्रिया में सशर्त ऑपरेटर वास्तव में आपके सिर के चारों ओर पाने के लिए बहुत आसान हैं। चीजों को करने के दो तरीके हैं:
{someItem && displayThis}
{someItem ? displayThisIfTrue : displayThisIfFalse}
यदि आप "someItem" बूलियन अभिव्यक्ति नहीं है, तो आप जो एक हिट कर सकते हैं, वह हिट हो सकता है। यदि यह कहा जाता है कि 0 प्रतिक्रिया 0 को मुद्रित करेगी या प्रतिक्रिया मूल आपको एक पाठ तत्व में "0" को लपेटने की आवश्यकता के बारे में एक त्रुटि देगी। यह आमतौर पर मिथ्या परीक्षणों के लिए समस्या नहीं है, लेकिन सत्य परीक्षण के लिए एक मुद्दा पेश करेगा। उदाहरण के लिए:
{!someItem && displayThis}
{someItem && displayThis}
मेरी अक्सर इस्तेमाल की जाने वाली ट्रिक? दोहरा नकारात्मक।
{!!someItem && displayThis}
ध्यान दें कि यह टर्नरी ऑपरेटरों पर लागू नहीं होता है (myVar? True: false) क्योंकि यह स्पष्ट रूप से परिणाम को बूलियन अभिव्यक्ति में परिवर्तित करता है।