首页 技术 正文
技术 2022年11月15日
0 收藏 767 点赞 3,274 浏览 1682 个字

文档 文档版本有些老
使用 dio 来获取数据

demo

import 'dart:io';import 'dart:convert';import 'package:flutter/material.dart';void main() => runApp(new MyApp());class MyApp extends StatelessWidget {  @override  Widget build(BuildContext context) {    return MaterialApp(      title: 'Ajnauw',      theme: ThemeData(        primarySwatch: Colors.blue,      ),      home: MyHomePage(),    );  }}class MyHomePage extends StatefulWidget {  MyHomePage({Key key}) : super(key: key);  @override  _MyHomePageState createState() => _MyHomePageState();}class _MyHomePageState extends State<MyHomePage> {  var users = [];  List<Widget> _generatorItem() {    return users.map((u) {      String name = u['name'];      return ListTile(        leading: CircleAvatar(          backgroundColor: Colors.grey.shade800,          child: Text('$name'[0]),        ),        title: Text(name),      );    }).toList();  }  @override  Widget build(BuildContext context) {    return Scaffold(      appBar: AppBar(        title: Text('demo'),      ),      body: ListView(        children: <Widget>[          Container(            child: Column(              children: <Widget>[                RaisedButton(                  color: Theme.of(context).primaryColor,                  onPressed: () async {                    try {                      // 使用端口而不是 localhost  https://github.com/hillelcoren/flutter-redux-starter/issues/16                      var url = Uri.parse('http://192.168.150.115:5000/test');                      var httpClient = new HttpClient();                      var request = await httpClient.getUrl(url);                      var response = await request.close();                      var data =                          await response.transform(utf8.decoder).toList();                      String body = data.join('');                      // print(body);                      setState(() {                        users = jsonDecode(body);                      });                      httpClient.close();                    } catch (e) {                      print(e);                    }                  },                  child: Text('Get List'),                ),              ],            ),          ),          Offstage(            offstage: users.isEmpty,            child: Container(              child: Column(                children: _generatorItem(),              ),            ),          ),        ],      ),    );  }}

接口代码

  @Get('test')  getHello(): Array<User> {    return [new User('ajanuw'), new User('suou')];  }
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,086
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,561
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,410
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,183
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,820
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,903