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

पैकेज विवरणv1.2.0+2

dson_adapter

कम कोड के साथ जेएसओएन को डार्ट क्लास में बदलें (build_runner)

AndroidiOSWebmacOSWindowsLinux
30-दिन डाउनलोड
11
लाइक
31
Pub अंक
150

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

flutter pub add dson_adapter

पैकेज अवलोकन

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

DsonAdapter एक कोड जनरेशन पैकेज है जो Flutter के लिए JSON से Dart क्लास में रूपांतरण को सरल बनाता है, न्यूनतम बॉयलरप्लेट के साथ। build_runner का उपयोग करके, यह स्वचालित रूप से सीरियलाइज़ेशन और डीसीरियलाइज़ेशन लॉजिक उत्पन्न करता है, हाथ से कोड लिखने को कम करता है। विकासकर्ताओं के लिए डिज़ाइन किया गया है जो दोहराव वाले कोड लिखे बिना कुशल, प्रकार-सुरक्षित JSON हैंडलिंग चाहते हैं। यह सभी प्रमुख प्लेटफॉर्मों पर Flutter प्रोजेक्ट में बिना किसी असुविधा के एकीकृत होता है, विकास गति और रखरखाव को बढ़ाता है।

उपयोग

  • ऑटो-जनरेटिंग JSON सीरियलाइज़र्स
  • डेटा मॉडल्स में बॉयलरप्लेट को कम करना
  • API प्रतिक्रिया विश्लेषण को सरल बनाना
  • RESTful सेवाओं के साथ एकीकरण
  • प्रकार-सुरक्षित JSON संचालन सक्षम करें
  • क्रॉस-प्लेटफ़ॉर्म एप्लिकेशन का समर्थन करना

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

  • build_runner के माध्यम से स्वचालित कोड उत्पादन
  • आवश्यक सेटअप न्यूनतम
  • प्रकार सुरक्षित JSON अनुक्रमण
  • नेस्टेड ऑब्जेक्ट्स को सपोर्ट करता है
  • कार्यान्वयन समय प्रदर्शन में कुशलता
  • क्रॉस-प्लेटफॉर्म संगतता

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

  • JSON APIs का उपयोग करने वाले Flutter विकासकर्ता
  • कोड बनाए रखने के प्राथमिकता वाली टीमें
  • त्वरित प्रोटोटाइपिंग की आवश्यकता वाले प्रोजेक्ट
  • जटिल JSON संरचना वाले ऐप्स
  • विकासक द्वारा हस्ताक्षरण से बचना
  • build_runner कार्यप्रवाह का उपयोग करने वाले उपयोगकर्ता

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

  • build_runner को सेटअप करने की आवश्यकता है
  • केवल निर्माण समय का निर्भरता
  • रनटाइम केवल JSON पार्सिंग के लिए उपयुक्त नहीं है
  • अतिरिक्त कॉन्फ़िगरेशन के बिना सीमित कस्टमाइज़ेशन
  • Dart क्लासेस पर सही अनुमान होने चाहिए
  • बिल्ड समय को थोड़ा बढ़ा सकता है

मूल README

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

DSON

Convert JSON to Dart Class withless code generate(build_runner).

A simple Object

class Person {
  final int id;
  final String name;
  final int age;

  Person({
    required this.id,
    required this.name,
    required this.age,
  });
}

Convert json to Object:

main(){
     final jsonMap = {
      'id': 1,
      'name': 'Joshua Clak',
      'age': 3,
    };

    Person person = dson.fromJson(jsonMap, Person.new);

    print(person.id);
    print(person.name);
    print(person.age);
}


A complex object:

For complex objects it is necessary to declare the constructor in the inner property;

main(){
    final jsonMap = {
      'id': 1,
      'name': 'MyHome',
      'owner': {
        'id': 1,
        'name': 'Joshua Clak',
        'age': 3,
      },
    };

    Person person = dson.fromJson(
      jsonMap,
      Person.new,
      inner: {
        'owner':  Person.new,
      }
    );

    print(person);
}

A complex object with List:

For work with a list, it is necessary to declare the constructor in the inner property and declare the list resolver in the resolvers property.

main(){
    final jsonMap = {
      'id': 1,
      'name': 'MyHome',
      'owner': {
        'id': 1,
        'name': 'Joshua Clak',
        'age': 3,
      },
      'parents': [
        {
          'id': 2,
          'name': 'Kepper Vidal',
          'age': 25,
        },
        {
          'id': 3,
          'name': 'Douglas Bisserra',
          'age': 23,
        },
      ],
    };

    Home home = dson.fromJson(
      // json Map or List
      jsonMap,
      // Main constructor
      Home.new,
      // external types
      inner: {
        'owner': Person.new,
        'parents': ListParam<Person>(Person.new),
      },
    );

    print(home);
}

DSON Have ListParam and SetParam for collection.

When API replace Param Name (Set aliases):

You need to declare within the aliases map the object type that has changed in the key, and in the value, a map with the old key as the key and the new key as the value.

main(){
    final jsonMap = {
      'id': 1,
      'name': 'MyHome',
      'master': {
        'key': 1,
        'name': 'Joshua Clak',
        'age': 3,
      },
      'parents': [
        {
          'key': 2,
          'name': 'Kepper Vidal',
          'age': 25,
        },
        {
          'key': 3,
          'name': 'Douglas Bisserra',
          'age': 23,
        },
      ],
    };

    Home home = dson.fromJson(
      // json Map or List
      jsonMap,
      // Main constructor
      Home.new,
      // external types
      inner: {
        'owner': Person.new,
        'parents': ListParam<Person>(Person.new),
      },
      // Param names Object <-> Param name in API
      aliases: {
        Home: {'owner': 'master'},
        Person: {'id': 'key'}
      }
    );

    print(home);
}

श्रेणियाँ

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

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

अभी कोई डेटा उपलब्ध नहीं है।