Flutter FutureBuilder异步请求列表示例
Flutter的FutureBuilder列表示例
import 'package:flutter/material.dart';
import '../service/service_method.dart'; class CartPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
var formData = {'adCode': '', 'isDebug':'aa'};
return Scaffold(
body: FutureBuilder( //异步请求再渲染 不用setState改变状态
future: request('get','chinaAddr',formData:formData), //可选参数formData:formData=属性名:属性值
builder: (context, snapshot){ //snapshot就是_calculation在时间轴上执行过程的状态快照
if(snapshot.hasData){ //判断有没有值
//print(snapshot.data); //数据处理
var data = snapshot.data;
List<Map> chinaData = (data['data'] as List).cast();
//print(chinaData); return ListView.builder(
itemCount: chinaData.length,
itemBuilder: (context, index) {
final Map<String, dynamic> item = (chinaData)[index];
return ListTile(
title: Text('${item["adName"]}'),
subtitle: Text('${item["adCode"]}'),
);
}
); }else{
return Center(
child: Text('加载中...'),
);
}
}
),
);
}
}
效果图:

Flutter FutureBuilder异步请求列表示例的更多相关文章
- Flutter 的setState与FutureBuilder及EasyRefresh示例
用setState改变状态 class CpwsList extends StatefulWidget { _CpwsListState createState() => _CpwsListSt ...
- C#异步Socket示例
C#异步Socket示例 概要 在C#领域或者说.net通信领域中有着众多的解决方案,WCF,HttpRequest,WebAPI,Remoting,socket等技术.这些技术都有着自己擅长的领域, ...
- 多线程异步编程示例和实践-Task
上篇博文中,我们介绍了Thread和ThreadPool: 多线程异步编程示例和实践-Thread和ThreadPool 本文中我们继续,说一下TPL(Task Parallel Library, 简 ...
- C#中异步调用示例与详解
using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServi ...
- Socket异步存储示例
异步客户端存储示例: using System; using System.Net; using System.Net.Sockets; using System.Threading; using S ...
- Asp.net异步IHttpAsyncHandler示例
/// <summary> /// 异步IHttpHandler,实现了一个简单的统计流量的功能, /// 由于是示例代码,所以没有判断IP或者MAC /// </summary&g ...
- 多线程异步编程示例和实践-Thread和ThreadPool
说到多线程异步编程,总会说起Thread.ThreadPool.Task.TPL这一系列的技术.总结整理了一版编程示例和实践,分享给大家. 先从Thread和ThreadPool说起: 1. 创建并启 ...
- Spring @Async实现异步调用示例
什么是“异步调用”? “异步调用”对应的是“同步调用”,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行:异步调用指程序在顺序执行时,不等待异步调用的语句返回结果 ...
- Flutter 的异步机制Future
Dart是一个单线程语言,可以理解成物理线路中的串联,当其遇到有延迟的运算(比如IO操作.延时执行)时,线程中按顺序执行的运算就会阻塞,用户就会感觉到卡顿,于是通常用异步处理来解决这个问题. Dart ...
随机推荐
- from module_name import var
######## a.py ######## aa = "Hello World" ####### b.py ######## from a import aa print aa ...
- Redis的下载、安装及启动
一.下载Redis 1. redis 的下载路径 https://pan.baidu.com/s/1tdMzOlcTlFC7Z3a3I_59hQ 提取码:5tgy 二.安装Redis cd到当前解压目 ...
- idea在src/main/java下新建包后项目中只显示src/main,后面的东西不显示,但在本地磁盘中是存在的
去掉图中的勾
- Vue动态创建注册component的实例代码
https://segmentfault.com/a/1190000015698278
- 动态menu导航条以及treeview树
1.menu表数据 2.在后台生成html内容后,前台利用nav-h.css生成menu导航条,利用Jquery的treeview插件生成menu树 前台coding: <!DOCTYPE ht ...
- 爬虫(五):PyQuery的使用
一:简介 PyQuery库是jQuery的Python实现,可以用于解析HTML网页内容,是一个非常强大又灵活的网页解析库. -->官方文档地址 -->jQuery参考文档 二:初始化 初 ...
- es 修改 mapping 字段类型
一.原索引 PUT my_index { "mappings": { "_doc": { "properties": { "cre ...
- Main property in package.json defines package entry point
I know my project's dependencies are installed under node_modules directory. But when I do require(' ...
- java之map遍历
java开发中常常会用到遍历,所以下边就列举四种map的遍历方法. public class testMap { public static void main(String[] args) { Ma ...
- GitHub回退到某个commit版本
首先查看commit日志 git log 复制你想回退到的commit版本的commit_id,也就是图中圈出来的一大串字符. 将本地回退 git reset --hard commit_id 将远程 ...