flutter_json_path 0.0.5 copy "flutter_json_path: ^0.0.5" to clipboard
flutter_json_path: ^0.0.5 copied to clipboard

gen, get, set, delete of Json Maps using path relative keys.

[FlutterJsonPath] in Dart #

A way to get and set json Map values using key paths! #

NOTE: A valid Map<String, dynamic> can be obtained using json encode/decode functions. This package will not work properly if your Map variable was initialized using Map Literals

Features #

Now you can read and write your json files without converting them to a model mapped version. Just use the key path to go directly where you want and get, set, delete or gen keys and values!

Installing #

Add FlutterJsonPath to your pubspec.yaml file:

dependencies:
  flutter_json_path: latest_version

Import FlutterJsonPath in files that it will be used:

import 'package:flutter_json_path/flutter_json_path.dart';

Getting started #

Just create an instance of FlutterJsonPath and start working:

final parser = FlutterJsonPath();
final result = parser.gen('foo/bar/baz');
print('gen: $result'); // gen: {foo: {bar: baz: {}}}

Usage #

import 'dart:convert';
import 'package:flutter_json_path/flutter_json_path.dart';

void main() {
  // Just to use as an example.
  // This is Map Literals initialization.
  Map<String, dynamic> target = {
    'foo': {
      'bar': {
        'baz': 42,
      },
    },
  };
  // This package does not work with Map Literals.
  // Must convert your Map to Json string and to Map again.
  // (if this is the case)
  target = jsonDecode(jsonEncode(target));

  final parser = FlutterJsonPath();

  var json1 = {...target};
  var value = parser.get(json1, 'foo/bar/baz');
  print('get: $value'); // get: 42

  var json2 = {...target};
  parser.set(json2, 'foo/bar', null);
  print('set: $json2'); // set: {foo: {bar: CLUB}}

  var json3 = {...target};
  parser.delete(json3, 'foo/bar');
  print('del: $json3');  // del: {foo: {}}
}

Show some ❤️ and star the repo to support the project

1
likes
150
pub points
65%
popularity

Publisher

unverified uploader

gen, get, set, delete of Json Maps using path relative keys.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

flutter

More

Packages that depend on flutter_json_path