jquery - AngularJS - Loading icon whilst waiting for data/data calculation -
मेरे पास एक सरल अंगुल्य http.get है:
app.factory ('countriesService' , समारोह ($ http) {वापसी {getCountryData: फ़ंक्शन (किया गया) {$ http.get ('/ resources / json / countries.json') .सुविधा (फ़ंक्शन (डेटा) {done (data);})। आतंक ( फ़ंक्शन (त्रुटि) {चेतावनी ('एक त्रुटि हुई');})}}}}); उदाहरण:। जेएसएएन: {"नोसीटीज़": 66, "बैलेंस": 2103, "जनसंख्या": 63705000, "सिटी इन्फो": [ "सिटीनाम": "लंदन", "सिटी पॉपिलेशन": "7825200", "तथ्यों": {"सबफ़ैक्ट 1": "एक्सज़ी", "सबफ़ैक्ट 2": "एक्सज़ी", "सबफ़ैक्ट 3": "एक्सज़ी", "सबफ़ैक्ट 4": " "" "" "" "" "" "", "सबफ़ैक्ट 5": "श्याम",}, "सिटीनाम": "मैनचेस्टर", "सिटी पॉप्युलेशन": "2584241", "तथ्यों": {"सबफ़ैक्ट 1": "एबीसी", "सबफ़ैक्ट 2": "abc "," सबफ़ैक्ट 3 ":" एबीसी "," सबफ़ैक्ट 4 ":" एबीसी "},}]," जमा करें ": नल," फॉर्मएक्शन ": रिक्त," फॉर्मसींट्रोलर ": रिक्त,}
< P> मैंने देखा है कि जब मेरा पृष्ठ एक लाँग है, कभी-कभी डेटा को लोड करने में कुछ समय लग सकता है, उदाहरण के लिए: & lt; div & gt; & Lt; a & gt; देशों & lt; / a & gt; : {{Countries.length}} & lt; / div & gt;
क्या कोणीय का इंतजार / लोडिंग आइकन है जिसे मैं दिखा सकता हूं, जबकि डीआईवी में डेटा आबादी हो रहा है?
आदर्श रूप से कुछ हल्का है और इसकी आवश्यकता नहीं है
यह मेरा सामान्य दृष्टिकोण है ओज़्ड के बिंदु के लिए, इसकी आवश्यकता है और .gif को दिखाएं / छुपाएं जो लोडिंग को इंगित करता है।
मार्कअप
ng-hide और एनजी-शो का उपयोग करना स्पिनर और तत्व की दृश्यता को नियंत्रित करने के लिए जिसमें आपके आबादी वाले डेटा शामिल होंगे।
& lt; p class = "text-center" ng-hide = "data loaded" & gt; & Lt; i वर्ग = "एफए-एफपी-स्पिनर एफए-स्पिन" & gt; & lt; / i & gt; & Lt; / p & gt; & Lt; div ng- शो = "डेटालोडेड" & gt; & Lt; a & gt; देशों & lt; / a & gt; : {{Countries.length}} & lt; / div & gt; जेएस
अपनी कॉल से पहले, $ scope.dataLoaded से झूठे सेट करें। फिर, आपके सफलता ब्लॉक के भीतर, इसे true पर सेट करें यह भी ध्यान देने योग्य है कि आपको अपने कारखाने में $ scope पारित करने की आवश्यकता होगी
app.factory ('countriesService', function ($ http, $ scope) {returnCountryData: function (done) {$ scope.dataLoaded = false; $ http.get ('/ संसाधन / json / countries.json ') .success (फ़ंक्शन (डेटा) {done (डेटा); $ scope.dataLoaded = true;}) .error (फ़ंक्शन (त्रुटि) {चेतावनी (' एक त्रुटि हुई ');}) ;}}});
Comments
Post a Comment