पैकेज, रिपॉज़िटरी और ऐप श्रेणियाँ खोजें

पैकेज विवरणv2.0.0

debounce_throttle

Futures, Streams और कॉलबैक्स के साथ काम करने वाला एक डेबाउंसर और थ्रोटल।

AndroidiOSWebmacOSWindowsLinux
30-दिन डाउनलोड
2 लाख
लाइक
75
Pub अंक
160

पैकेज इंस्टॉल करें

flutter pub add debounce_throttle

पैकेज अवलोकन

सार्वजनिक जानकारी से बना चयन मार्गदर्शन। केवल संदर्भ हेतु।

एक हल्का डार्ट पैकेज जो एसिंक्रोनस ऑपरेशन, जैसे कि फ्यूचर्स, स्ट्रीम्स और कॉलबैक्स के लिए डेबाउंसिंग और थ्रॉटलिंग कार्यक्षमता प्रदान करता है। यह उच्च-आवृत्ति घटनाओं—जैसे उपयोगकर्ता इनपुट या नेटवर्क मांगों—को प्रबंधित करने में मदद करता है, जिससे प्रदर्शन में सुधार और संसाधन उपयोग कम होता है। खोज इनपुट, आकार बदलने वाले हैंडलर्स और रियल-टाइम फॉर्म सत्यापन को ऑप्टिमाइज़ करने के लिए आदर्श है। पैकेज प्लेटफॉर्म-अनिर्भर है और एंड्रॉइड, आईओएस, वेब, मैकओएस, विंडोज और लिनक्स पर फ्लटर एप्लिकेशन में बिना किसी दिक्कत के एकीकृत होता है।

उपयोग

  • खोज इनपुट देरी को अनुकूलित करना
  • तेज़ API कॉल को कम करना
  • रियल-टाइम फॉर्म सत्यापन का प्रबंधन
  • विंडो आकार समायोजन घटनाओं का प्रबंधन
  • स्क्रॉल प्रदर्शन में सुधार करना
  • बटन क्लिक दर को नियंत्रित करें

मुख्य विशेषताएँ

  • Futures, Streams और कॉलबैक्स का समर्थन करता है
  • क्रॉस-प्लेटफॉर्म संगतता
  • सरल और स्पष्ट एपीआई
  • निर्धारित देरी और थ्रोटल अंतराल
  • कोई बाहरी निर्भरता नहीं
  • थ्रेड-सुरक्षित संचालन

इनके लिए उपयुक्त

  • प्रतिक्रियाशील UI विकसित करने वाले डेवलपर्स
  • अक्सर उपयोगकर्ता इंटरैक्शन वाले ऐप्स
  • प्रदर्शन-महत्वपूर्ण एप्लिकेशन
  • रियल-टाइम डेटा प्रोसेसिंग
  • बहुप्लेटफॉर्म लक्षित फ्लटर एप्प्स

विचार योग्य बातें

  • असिंक्रोनस प्रोग्रामिंग की समझ आवश्यक है
  • समय-संवेदनशील संचालन में लेटेंसी का परिचय दे सकता है
  • तत्काल प्रतिक्रिया परिदृश्य के लिए उपयुक्त नहीं
  • देरी के मानों को सावधानीपूर्वक ट्यून करने की आवश्यकता है
  • घटना दर सीमांकन उपयोग मामलों के लिए सीमित
  • जटिल राज्य प्रबंधन का समर्थन नहीं करता है

मूल README

संबंधित सोर्स रिपॉज़िटरी के मूल README का स्नैपशॉट। नवीनतम सामग्री के लिए रिपॉज़िटरी देखें।

debounce_throttle

A debouncer and throttle that works with Future, Stream, and callbacks.

Class Purpose
Debouncer Wait for changes to stop before notifying.
Throttle Notifies once per Duration for a value that keeps changing.

Usage

  final debouncer = Debouncer<String>(Duration(milliseconds: 200));

  // Run a search whenever the user pauses while typing.
  textEditingController.addListener(() => debouncer.value = textEditingController.text);
  debouncer.values.listen((search) => submitSearch(search));

  final throttle = Throttle<double>(Duration(milliseconds: 100));

  // Limit being notified of continuous sensor data.
  sensor.addListener(throttle.setValue);
  throttle.values.listen((data) => print('$data'));

example/main.dart output

Tick     : ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Changed  : -----------     -  --   - -  -    --  - -    -   -    -  -   - ---  -  - -  - -    -    -    - - - - --    -    -  -   - - -   --    - --    ---    -   -  - -     -    -     -  -  -
Debounced:              D     D   D     D  D          D    D   D    D  D          D         D    D    D             D    D    D  D       D    D       D      D    D        D     D    D     D
Throttled: T  T  T  T  T   T  T  T  T   T  T  T  T  T   T   T    T  T   T  T  T  T  T  T  T   T    T    T  T  T  T  T  T   T  T   T  T  T  T  T  T  T   T  T   T   T  T  T    T    T     T  T  T

श्रेणियाँ

निर्भरताएँ

निर्भरता सूची 2 आइटम

सोर्स रिपॉज़िटरी

इस पैकेज का उपयोग करने वाले प्रोजेक्ट