2014-10-18 11 views
5

का उपयोग कैसे करें मुझे बिल्कुल यकीन नहीं है कि UI-scroll का उपयोग कैसे करें। मैंने एक प्लंकर बनाया है लेकिन मुझे नहीं लगता कि यह सही तरीके से काम करता है क्योंकि यह आपके द्वारा स्क्रॉल किए जाने पर डीओएम से आइटम्स को जोड़ या हटा नहीं रहा है। यह उन सभी को प्रदर्शित करता है!Angularjs ui-utils ui-scroll

My Plunker for ui-scroll

MyApp.controller('MyAppCtrl', function($scope) { 
    $scope.myData = { 
     get : function(index, count, success) { 
    var result = [{"guid":"8544a1c7-d637-42ae-836a-8a71901b44ca"},{"guid":"aff1450c-b4dd-4aa0-9b12-ea097e72c6fa"},{"guid":"a1c68796-7a28-4721-904a-4944234e253e"},{"guid":"8b7d881f-20ea-4b6c-a8d6-772e1236e6bf"},{"guid":"398c50a7-885e-4455-b741-66ebc2a64060"},{"guid":"81557a60-60b5-425a-9839-cf1da7e21bde"},{"guid":"ed48be4e-5963-47a1-b872-2bf20bec5da3"},{"guid":"15d9fa95-f824-4bd9-8b75-afb8dec99f03"},{"guid":"eaf2e5aa-24a4-4995-82d5-e661efc64556"}]; 

     index = 1; 
     count = 10; 

     success(result); 
     } 
    }; 
}); 

मैं Github पर कई उदाहरण को देखा लेकिन कोड के सबसे कॉफी लिपि में है और यह केवल डोम के लिए एक पाश में आइटम जोड़ने है। मेरा सवाल यह है कि यदि आपके पास पहले से डेटा सही है तो आप आइटम कैसे जोड़ते हैं। क्या मैं अभी भी डेटा सेट के माध्यम से पुनरावृत्त है?

आपकी सहायता की बहुत सराहना की जाती है।

उत्तर

2

यूआई-स्क्रॉल आपको सूचकांक और गिनती के आधार पर सफलता कॉलबैक फ़ंक्शन पर वापस आने के परिणामस्वरूप आपको छोड़ देता है। कुछ इस तरह काम करना चाहिए

get: function(index, count, success){ 
     var result = [{"guid":"8544a1c7-d637-42ae-836a-8a71901b44ca"},{"guid":"aff1450c-b4dd-4aa0-9b12-ea097e72c6fa"},{"guid":"a1c68796-7a28-4721-904a-4944234e253e"},{"guid":"8b7d881f-20ea-4b6c-a8d6-772e1236e6bf"},{"guid":"398c50a7-885e-4455-b741-66ebc2a64060"},{"guid":"81557a60-60b5-425a-9839-cf1da7e21bde"},{"guid":"ed48be4e-5963-47a1-b872-2bf20bec5da3"},{"guid":"15d9fa95-f824-4bd9-8b75-afb8dec99f03"},{"guid":"eaf2e5aa-24a4-4995-82d5-e661efc64556"}];   
     success(result.slice(index-1, index-1 + count)); 
} 

पता है कि सूचकांक आप पारित कर रहे हैं गैर शून्य इसलिए आधारित है जब आप एक सरणी आप एक सूचकांक है कि शून्य आधारित का उपयोग करना पड़ (इसलिए index- साथ काम कर रहे है रहो 1)। साथ ही, आप परिणाम प्राप्त करने के बाहर परिणाम को रखने पर विचार करना चाहेंगे और आपके फ़ंक्शन को उस मॉडल के एक हिस्से को वापस कर सकते हैं जिसे आप यूआई-स्क्रॉल पर पास करना चाहते हैं।

+0

क्या आप गतिशील डेटा के साथ एक उदाहरण प्रदान कर सकते हैं? http://plnkr.co/edit/HFOwnLsIJd84ayrwCVWq?p=preview – Claude

0

Zach, बिंदु है लेकिन न केवल एक आगे के इलाज के लिए, लेकिन एक वापस स्क्रॉल सूचकांक के रूप में अच्छी तरह से, आप सूचकांक पार करने से पहले ऐसा करने और सफलता के लिए गिनती करने के लिए है:

index = index <= 0 ? index + 1 : index -1; 

आईई, परिणामस्वरूप कोड चाहिए इस तरह दिखें:

get: function(index, count, success) { 
    var result = [ 
     {"guid":"8544a1c7-d637-42ae-836a-8a71901b44ca"},{"guid":"aff1450c-b4dd-4aa0-9b12-ea097e72c6fa"}, 
     {"guid":"a1c68796-7a28-4721-904a-4944234e253e"},{"guid":"8b7d881f-20ea-4b6c-a8d6-772e1236e6bf"}, 
     {"guid":"398c50a7-885e-4455-b741-66ebc2a64060"},{"guid":"81557a60-60b5-425a-9839-cf1da7e21bde"}, 
     {"guid":"ed48be4e-5963-47a1-b872-2bf20bec5da3"},{"guid":"15d9fa95-f824-4bd9-8b75-afb8dec99f03"}, 
     {"guid":"eaf2e5aa-24a4-4995-82d5-e661efc64556"} 
    ]; 
    index = index <= 0 ? index + 1 : index -1; 
    success(result.slice(index, index + count)); 
}