class Get1 { Data data; Support support; Get1({required this.data, required this.support}); factory Get1.fromJson(Map<String, dynamic> json) => Get1( data: Data.fromJson(json["data"]), support: Support.fromJson(json["support"]), ); Map<String, dynamic> toJson() => { "data": data.toJson(), "support": support.toJson(), }; } class Data { int id; String email; String firstName; String lastName; String avatar; Data({ required this.id, required this.email, required this.firstName, required this.lastName, required this.avatar, }); factory Data.fromJson(Map<String, dynamic> json) => Data( id: json["id"], email: json["email"], firstName: json["first_name"], lastName: json["last_name"], avatar: json["avatar"], ); Map<String, dynamic> toJson() => { "id": id, "email": email, "first_name": firstName, "last_name": lastName, "avatar": avatar, }; } class Support { String url; String text; Support({ required this.url, required this.text, }); factory Support.fromJson(Map<String, dynamic> json) => Support( url: json["url"], text: json["text"], ); Map<String, dynamic> toJson() => { "url": url, "text": text, }; } ///////////////////// List<Get1> Data = []; List<Get1> Support = []; @override void initState() { super.initState(); getval(); } Future<void> getval() async { try { final res = await http.get(Uri.parse("https://reqres.in/api/users/2")); Get1 val = Get1.fromJson(json.decode(res.body)); setState(() { Data.add(val); }); if (res.statusCode == 200) { print(Data); } } catch (e) { print('Error fetching data: $e'); } } ///////////////////////////// Text( "Mail : ${Data[0].data.email}", style: const TextStyle( fontSize: 20, color: Colors.white, fontWeight: FontWeight.bold), ), Expanded( child: WebView( initialUrl: Data[0].support.url, // "https://reqres.in/#support-heading", onWebViewCreated: (WebViewController webViewController) { _controller.complete(webViewController); }, javascriptMode: JavascriptMode.unrestricted, onWebResourceError: (WebResourceError error) { print('----------------------: $error-----------------'); }, ), ),
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter