मैं ऐसा करना चाहता हूं:
ng-hide="!globals.isAdmin && mapping.is_default"
लेकिन अभिव्यक्ति हमेशा के लिए मूल्यांकन करता है false
।
मैं विशेष कार्य को परिभाषित नहीं करना चाहता $scope
।
मैं ऐसा करना चाहता हूं:
ng-hide="!globals.isAdmin && mapping.is_default"
लेकिन अभिव्यक्ति हमेशा के लिए मूल्यांकन करता है false
।
मैं विशेष कार्य को परिभाषित नहीं करना चाहता $scope
।
जवाबों:
यदि आपको मनमाने ढंग से जावास्क्रिप्ट कोड चलाने की आवश्यकता है, तो एक नियंत्रक विधि का उपयोग करें, या आप एक फ़िल्टर परिभाषित कर सकते हैं जो सही या गलत लौटा है।
मैंने अभी-अभी परीक्षण किया है (पहले ऐसा करना चाहिए था), और ng-show="!a && b"
जैसा अपेक्षित था , वैसा ही कुछ काम किया।
ng-show
/ ng-hide
केवल boolean
मूल्यों को स्वीकार करता है।
जटिल अभिव्यक्तियों के लिए जटिलताओं से बचने के लिए नियंत्रक और गुंजाइश का उपयोग करना अच्छा है।
नीचे एक काम करेगा (यह बहुत जटिल अभिव्यक्ति नहीं है)
ng-show="User=='admin' || User=='teacher'"
यहां तत्व को यूआई में दिखाया जाएगा जब दोनों में से कोई भी शर्त सही होगी (या ऑपरेशन)।
इस तरह आप किसी भी भाव का उपयोग कर सकते हैं।
यदि आपके पास बहुत सारे भाव नहीं हैं तो यह काम करेगा।
उदाहरण: ng-show="form.type === 'Limited Company' || form.type === 'Limited Partnership'"
इससे अधिक किसी भी अभिव्यक्ति के लिए एक नियंत्रक का उपयोग करें।
This will work if you do not have too many expressions.
हालांकि मैं मानता हूं कि इसे नियंत्रक के बजाय किया जाना चाहिए।
मैं आम तौर पर एनजी-शो और एन-छिपाने के साथ भावों से बचने की कोशिश करता हूं क्योंकि वे बूलियन के रूप में डिज़ाइन किए गए थे, न कि सशर्त। अगर मुझे सशर्त और बूलियन तर्क की आवश्यकता है, तो मैं एनजी का उपयोग करके सशर्त तर्क में रखना पसंद करता हूं-अगर पहली जांच के रूप में, तो एनजी-शो और एनजी-छिपाने के साथ बूलियन तर्क के लिए एक अतिरिक्त जांच में जोड़ें
हॉवरवर, अगर आप एनजी-शो या एनजी-छिपाने के लिए एक सशर्त का उपयोग करना चाहते हैं, तो यहां कुछ उदाहरणों के साथ एक लिंक दिया गया है: एनजी-अगर, एनजी-शो, एनजी-छिपाने, एनजी-इनकॉल, एनजी-स्विच का उपयोग करके सशर्त प्रदर्शन
इन उपरोक्त जवाबों में से कुछ मेरे लिए काम नहीं करते थे, लेकिन यह किया। बस किसी और के मामले में एक ही मुद्दा है।
ng-show="column != 'vendorid' && column !='billingMonth'"
false
, तो आप उन मूल्यों को दोबारा जांच सकते हैं। यह संभव है कि "ग्लोबल्स" और / या "मैपिंग" ऑब्जेक्ट हैंundefined