json_helpers 0.1.5 copy "json_helpers: ^0.1.5" to clipboard
json_helpers: ^0.1.5 copied to clipboard

The `json_helpers` contains functions that make it easier decoding JSON objects directly from strings, lists and maps.

json_helpers #

The json_helpers contains functions that make it easier decoding JSON objects directly from strings, lists and maps.

Version 0.1.5

Allows you to simplify decoding JSON objects directly from String, List and Map values.
Easy to use (by calling one method).
Less code, fewer bugs.
The expected result is guaranteed and predictable.

Examples:

import 'package:json_helpers/json_helpers.dart';

void main() {
  List list;
  Map map;
  String string;

  // String to Person
  string = '{"name": "Jack"}';
  var person = string.json((e) => Person.fromJson(e));
  assert(person.name == 'Jack');

  // String to List<Person>
  string = '[{"name": "Jack"}, {"name": "John"}]';
  var persons = string.jsonList((e) => Person.fromJson(e));
  assert(persons[1].name == 'John');

  // String to Map<Person>
  string =
      '{"Jack Shephard": {"name": "Jack"}, "John Locke": {"name": "John"}}';
  final personMap = string.jsonMap((e) => Person.fromJson(e));
  assert(personMap['John Locke']!.name == 'John');

  // Map to Person
  map = {'name': 'Jack'};
  person = map.json((e) => Person.fromJson(e));
  assert(person.name == 'Jack');

  // Map to Person
  person = fromJson(map, (e) => Person.fromJson(e));
  assert(person.name == 'Jack');

  // List<Map> to List<Person>
  list = [
    {'name': 'Jack'},
    {'name': 'John'}
  ];
  persons = list.json((e) => Person.fromJson(e));
  assert(persons[1].name == 'John');
}

class Person {
  final String name;

  Person({required this.name});

  factory Person.fromJson(Map<String, dynamic> json) {
    return Person(name: (json['name'] as String?) ?? '');
  }

  Map<String, dynamic> toJson() => {'name': name};
}

3
likes
150
pub points
73%
popularity

Publisher

unverified uploader

The `json_helpers` contains functions that make it easier decoding JSON objects directly from strings, lists and maps.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (license)

More

Packages that depend on json_helpers