json_object_mapper

Last updated:

0 purchases

json_object_mapper Image
json_object_mapper Images
Add to Cart

Description:

json object mapper

json_object_mapper #










A simple and easy way to map Objects from JSON and to Map with support for Dart Native and Dart Web.
Main features:


Works with simple Objects: no method implementation needed.


Compatible with Web (JS) and Native (VM) platforms.


No @annotations or code generation.


Only uses Mirrors if it's available in the platform (transparent load).


JSONTransformer
You can use simple and easy JSONTransformer patterns to transform a JSON tree.
This helps to integrate JSON trees of 3rd part with your code, UI and Entities.
Usage #
JSONObject #
A simple JSON Object mapping example:
import 'package:json_object_mapper/json_object_mapper.dart';

class User extends JSONObject {
String username ;
String email ;

User.fromFields(this.username, this.email);

User.fromJson(String json) {
initializeFromJson(json) ;
}

@override
String toString() {
return 'User{username: $username, email: $email}' ;
}

}

main() {

User user1 = User.fromFields("joe", "[email protected]") ;

print("User[1]: $user1");
// User[1]: User{username: joe, email: [email protected]}

print(user1.toJson());
// {"username":"joe","email":"[email protected]"}

User user2 = User.fromJson( '{"username":"joe2","email":"[email protected]"}' ) ;

print("User[2]: $user2");
// User[2]: User{username: joe2, email: [email protected]}

print(user2.toJson());
// {"username":"joe2","email":"[email protected]"}

}
copied to clipboard
JSONTransformer #
A simple JSON tree transformation example:

var json = {
'result': [
{'id': 1, 'name': 'a', 'group': 'x'},
{'id': 2, 'name': 'b', 'group': 'y'},
{'id': 3, 'name': 'c', 'group': 'z'},
]
};

var transformer = JSONTransformer.parse('{result}.mapEntry(name,id).asMap()');

var json2 = transformer.transform(json);

/// json2 = {'a': 1, 'b': 2, 'c': 3}

copied to clipboard
JSONTransformer Operations #

{"$key"}: converts node to a $key value of node as Map.
[$index]: converts node to a $index value of node as List.
asMap(): converts node to a Map.
asList(): converts node to a List.
asString($delimiter): converts node to a String, using optional $delimiter for node List.
mapEntry($key,$value): converts node or node.entries to a MapEntry($key, $value).
split($delimiter,$limit?): converts node or node.entries splitting into a List of parts, using $delimiter as RegExp and optional $limit.
uc(): converts node or node.entries to an Upper Case String.
lc(): converts node or node.entries to a Lower Case String.
trim(): converts node or node.entries to a Trimmed String.
encodeJson($withIdent): converts node encoding to a JSON String, using optional $withIdent as bool.
decodeJson(): converts node or node.entries decoding to a JSON tree.

Features and bugs #
Please file feature requests and bugs at the issue tracker.
Author #
Graciliano M. Passos: gmpassos@GitHub.
License #
Dart free & open-source license.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.