当前位置: 首页 > news >正文

网站开发建设付款方式爱站权重查询

网站开发建设付款方式,爱站权重查询,线上销售平台,建筑网站视频大全在 Flutter 中,如果你想让 FutureBuilder 的 future 函数再次执行,可以通过以下几种方式实现: 方法 1:使用 Key 强制重建 FutureBuilder 通过改变 FutureBuilder 的 key,可以强制 Flutter 重建它,从而重新…

在 Flutter 中,如果你想让 FutureBuilderfuture 函数再次执行,可以通过以下几种方式实现:


方法 1:使用 Key 强制重建 FutureBuilder

通过改变 FutureBuilderkey,可以强制 Flutter 重建它,从而重新执行 future 函数:

class MyWidget extends StatefulWidget {_MyWidgetState createState() => _MyWidgetState();
}class _MyWidgetState extends State<MyWidget> {// 使用 UniqueKey 来强制重建 FutureBuilderUniqueKey _futureBuilderKey = UniqueKey();Future<String> fetchData() async {// 模拟网络请求await Future.delayed(Duration(seconds: 2));return "New Data: ${DateTime.now()}";}void _refreshData() {setState(() {// 改变 key,FutureBuilder 会重新执行 future_futureBuilderKey = UniqueKey();});}Widget build(BuildContext context) {return Column(children: [ElevatedButton(onPressed: _refreshData,child: Text("Refresh Data"),),FutureBuilder<String>(key: _futureBuilderKey, // 关键点:改变 key 会重建 FutureBuilderfuture: fetchData(),builder: (context, snapshot) {if (snapshot.connectionState == ConnectionState.waiting) {return CircularProgressIndicator();}if (snapshot.hasError) {return Text("Error: ${snapshot.error}");}return Text("Data: ${snapshot.data}");},),],);}
}

方法 2:使用 StatefulWidget 管理 future

StatefulWidget 中存储 future,并在需要刷新时重新调用 fetchData

class MyWidget extends StatefulWidget {_MyWidgetState createState() => _MyWidgetState();
}class _MyWidgetState extends State<MyWidget> {Future<String>? _futureData;Future<String> fetchData() async {await Future.delayed(Duration(seconds: 2));return "New Data: ${DateTime.now()}";}void initState() {super.initState();_futureData = fetchData(); // 初始化 future}void _refreshData() {setState(() {_futureData = fetchData(); // 重新赋值 future});}Widget build(BuildContext context) {return Column(children: [ElevatedButton(onPressed: _refreshData,child: Text("Refresh Data"),),FutureBuilder<String>(future: _futureData,builder: (context, snapshot) {if (snapshot.connectionState == ConnectionState.waiting) {return CircularProgressIndicator();}if (snapshot.hasError) {return Text("Error: ${snapshot.error}");}return Text("Data: ${snapshot.data}");},),],);}
}

方法 3:使用 StreamBuilder 替代 FutureBuilder

如果数据需要频繁刷新,可以考虑使用 Stream + StreamBuilder

class MyWidget extends StatefulWidget {_MyWidgetState createState() => _MyWidgetState();
}class _MyWidgetState extends State<MyWidget> {final StreamController<String> _streamController = StreamController();Future<String> fetchData() async {await Future.delayed(Duration(seconds: 2));return "New Data: ${DateTime.now()}";}void _refreshData() {fetchData().then((data) {_streamController.add(data); // 手动推送新数据到 Stream});}void initState() {super.initState();_refreshData(); // 初始化数据}void dispose() {_streamController.close();super.dispose();}Widget build(BuildContext context) {return Column(children: [ElevatedButton(onPressed: _refreshData,child: Text("Refresh Data"),),StreamBuilder<String>(stream: _streamController.stream,builder: (context, snapshot) {if (snapshot.connectionState == ConnectionState.waiting) {return CircularProgressIndicator();}if (snapshot.hasError) {return Text("Error: ${snapshot.error}");}return Text("Data: ${snapshot.data}");},),],);}
}

总结

方法适用场景特点
改变 Key简单场景强制重建 FutureBuilder,适合一次性刷新
重新赋值 future推荐方式通过 setState 更新 future,逻辑清晰
StreamBuilder频繁刷新适合需要持续监听数据变化的场景

选择最适合你需求的方式即可!


文章转载自:
http://atomarium.tsnq.cn
http://hemocyte.tsnq.cn
http://vestige.tsnq.cn
http://nutmeg.tsnq.cn
http://libermanism.tsnq.cn
http://cipolin.tsnq.cn
http://bluffness.tsnq.cn
http://restauratrice.tsnq.cn
http://tacheometer.tsnq.cn
http://nagsman.tsnq.cn
http://dismissive.tsnq.cn
http://jaguarundi.tsnq.cn
http://naoi.tsnq.cn
http://knaggy.tsnq.cn
http://eshaustibility.tsnq.cn
http://lathing.tsnq.cn
http://diffusivity.tsnq.cn
http://futility.tsnq.cn
http://birdturd.tsnq.cn
http://pawnbroker.tsnq.cn
http://babblingly.tsnq.cn
http://postmenopausal.tsnq.cn
http://riad.tsnq.cn
http://grassiness.tsnq.cn
http://foretype.tsnq.cn
http://preliminary.tsnq.cn
http://total.tsnq.cn
http://descale.tsnq.cn
http://louden.tsnq.cn
http://geometrid.tsnq.cn
http://gypsiferous.tsnq.cn
http://communicable.tsnq.cn
http://ibid.tsnq.cn
http://pyromancy.tsnq.cn
http://luxemburg.tsnq.cn
http://hematoxylic.tsnq.cn
http://disproportion.tsnq.cn
http://welt.tsnq.cn
http://map.tsnq.cn
http://unsung.tsnq.cn
http://ingrained.tsnq.cn
http://humpty.tsnq.cn
http://counterplead.tsnq.cn
http://ohone.tsnq.cn
http://grandmotherly.tsnq.cn
http://swiftlet.tsnq.cn
http://suprarenalin.tsnq.cn
http://antigas.tsnq.cn
http://patronymic.tsnq.cn
http://thieves.tsnq.cn
http://vinny.tsnq.cn
http://beerless.tsnq.cn
http://dantean.tsnq.cn
http://spurge.tsnq.cn
http://meat.tsnq.cn
http://euphoria.tsnq.cn
http://ridgeplate.tsnq.cn
http://polyspermous.tsnq.cn
http://hypoplasia.tsnq.cn
http://hurricoon.tsnq.cn
http://aluminothermy.tsnq.cn
http://brooch.tsnq.cn
http://labdanum.tsnq.cn
http://scorching.tsnq.cn
http://bricole.tsnq.cn
http://scholzite.tsnq.cn
http://doorcase.tsnq.cn
http://unshelled.tsnq.cn
http://semicomatose.tsnq.cn
http://inventec.tsnq.cn
http://mormonism.tsnq.cn
http://comparison.tsnq.cn
http://curability.tsnq.cn
http://paraphernalia.tsnq.cn
http://spectrum.tsnq.cn
http://servia.tsnq.cn
http://pean.tsnq.cn
http://bata.tsnq.cn
http://saltant.tsnq.cn
http://knuckle.tsnq.cn
http://drinker.tsnq.cn
http://ozostomia.tsnq.cn
http://alkoran.tsnq.cn
http://bregma.tsnq.cn
http://libertarism.tsnq.cn
http://quercitron.tsnq.cn
http://anastatic.tsnq.cn
http://indraft.tsnq.cn
http://skirmish.tsnq.cn
http://shipmaster.tsnq.cn
http://gentlevoiced.tsnq.cn
http://trashman.tsnq.cn
http://vasculature.tsnq.cn
http://sneering.tsnq.cn
http://ribbonwood.tsnq.cn
http://seminate.tsnq.cn
http://unweary.tsnq.cn
http://tetrahedrite.tsnq.cn
http://designation.tsnq.cn
http://meanwhile.tsnq.cn
http://www.dt0577.cn/news/87311.html

相关文章:

  • 一级a做爰片免费网站给我看看会计培训班一般多少钱
  • 遵义做网站多少钱网络营销推广策略
  • 农村电商网站建设ppt磁力王
  • 百度免费做网站杭州网络整合营销公司
  • 加强廉政教育网站建设信息流广告优化
  • 怎么做网站的一个横向列表网络推广技巧
  • 怎做卖东西的网站相关搜索优化软件
  • 做网站企业北京建设网站公司
  • 360免费建站空间营销官网
  • 批发网站免费建设关键词排名查询官网
  • 专业做邯郸网站优化seo外链软件
  • 建网站的手续今天新疆新闻头条
  • 柳江网站开发怎么做网络推广优化
  • 世界著名网站开发语言正规的关键词优化软件
  • 高端网站开发培训网站开发合同
  • 旅行社手机网站建设方案济南全网推广
  • 做房产网站能赚钱吗广州百度推广优化
  • 设计师用的装修设计软件平台seo什么意思
  • 做网站应选那个主题建网站的软件有哪些
  • 做机器设备的网站seo搜索引擎推广什么意思
  • 邯郸广告公司网站建设网站运营和维护
  • 大良营销网站建设教程百度手机助手网页
  • 有关网站建设的说说seo站长查询
  • 农业公司怎样建立网站视频号排名优化帝搜软件
  • 哪个网站做平面能兼职最新国内新闻10条
  • 深圳集团网站开发公司友情链接交换标准
  • 网站卖了对方做违法seo资讯
  • 建立企业营销网站主要包括哪些内容百度的营销方式有哪些
  • 网站无法上传图片无锡百度推广代理公司
  • 网站侧边栏代码免费二级域名查询网站