GithubHelp home page GithubHelp logo

idootop / json_to_dart Goto Github PK

View Code? Open in Web Editor NEW

This project forked from javiercbk/json_to_dart

0.0 0.0 0.0 3.21 MB

Auto generate dart / typescript classes from json strings

Home Page: https://idootop.github.io/json_to_dart/

License: The Unlicense

Dart 100.00%

json_to_dart's Introduction

JSON to Class

Given a JSON string, this library will generate all the necessary Dart / Typescript classes to parse and generate JSON.

Usage

dependencies:
  ...
  json2class:
    git:
      url: https://github.com/idootop/json_to_dart.git
import 'package:json2class/json2class.dart';

void main() async {
  final jsonStr = '''
    {
      "code": 404,
      "msg": "Not found!"
    }
  ''';
  final dartCode = json2dart(className: 'HttpError', jsonStr: jsonStr);
  final tsCode = json2ts(className: 'HttpError', jsonStr: jsonStr);
}

This will generate something like this:

class HttpError {
  late int code;
  late String msg;

  HttpError({
    int? code,
    String? msg,
  }) {
    this.code = code ?? 0;
    this.msg = msg ?? '';
  }

  factory HttpError.fromJson(Map<String, dynamic> json) => HttpError(
        code: json['code'],
        msg: json['msg'],
      );

  Map<String, dynamic> toJson() => {
        'code': code,
        'msg': msg,
      };
}
class HttpError {
  public code: number;
  public msg: string;

  public constructor(p: { code?: number; msg?: string }) {
    this.code = p.code ?? 0;
    this.msg = p.msg ?? "";
  }

  public static fromJson(json = {} as any): HttpError {
    return new HttpError({
      code: json.code,
      msg: json.msg,
    });
  }

  public toJson() {
    return {
      code: this.code,
      msg: this.msg,
    };
  }
}

Acknowledgement

This library is based on javiercbk's json_to_dart.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.