javascript - ExtJS। एक कंटेनर के अंदर सभी घटकों को छिपाएं




extjs3 (4)

मेरे पास एक खिड़की है जिसमें मैं बहुत से घटकों जैसे पैनल आदि प्रदान कर रहा हूं।

क्या एक तरीका है कि मैं खिड़की में सभी घटकों को व्यक्तिगत रूप से छिपाने के लिए छुपा सकता हूं? कुछ इस तरह,

Ext.getComponent('myWindow').hideAllComponents();

मैं extjs 3.4 का उपयोग कर रहा हूँ।


Answers

मान लें कि myWindow विंडो आपकी विंडो का संदर्भ है, आप इसका उपयोग कर सकते हैं:

Ext.each(myWindow.items.items, function(cmp) { cmp.hide(); });

अन्य जवाबों को ext.get का उल्लेख करते हैं लेकिन यह घटकों को नहीं, बल्कि DOM तत्वों को पुनर्प्राप्त करता है।

इन्हें भी देखें: ExtJS सभी बाल घटकों को छिपाना


अपने कंटेनर के लिए शैली सेट करने का प्रयास करें

Ext.get('myWindow').setStyle('display','none');

अगर मैं आपको सही समझा, तो आप अपनी विंडो छिपाना नहीं चाहते हैं, लेकिन आपके विंडो में मौजूद तत्व। तो ऐसा कर सकते हैं:

// get window, get element, get all direct children with css selector '*'
var children = Ext.get('myWindow').getEl().down('*')

// hide them all
Ext.each(children,function(child){child.hide();});

यदि आप पुस्तकालयों का उपयोग करने में सक्षम हैं, तो आप पाएंगे कि Lo-Dash जेएस लाइब्रेरी काफी उपयोगी है। इस मामले में, आगे बढ़ें और _.contains() जांच करें _.contains() v4 के रूप में _.includes() द्वारा प्रतिस्थापित किया गया है)।

(नोट लो-डैश सम्मेलन लाइब्रेरी ऑब्जेक्ट का नामकरण कर रहा है _। अपने प्रोजेक्ट के लिए इसे सेट अप करने के लिए उसी पृष्ठ में इंस्टॉलेशन की जांच करना न भूलें।)

_.contains("foo", "oo");     // → true
_.contains("foo", "bar");    // → false
// Equivalent with:
_("foo").contains("oo");     // → true
_("foo").contains("bar");    // → false

अपने मामले में, आगे बढ़ें और उपयोग करें:

_.contains(str, "Yes");
// or:
_(str).contains("Yes");

.. जो भी आप बेहतर पसंद करते हैं।





javascript extjs extjs3