草庐IT

future-proof

全部标签

firebase - 如何在 Flutter 中基于 Future 结果构建 Stream?

我有一个使用Firebase存储和谷歌登录的Flutter应用。我尝试执行的步骤非常简单:1-使用Google登录(完成)。2-获取当前用户ID(完成)。3-在为流生成器构造流时使用用户ID(问题)。到目前为止,我所做的是使用Future获取当前用户ID,然后在Where子句中注入(inject)用户Id.where('userId',isEqualTo:userId)这就是我最终得到的:这是我应该创建流的部分://Getdocument'ssnapshotsandreturnitasstream.FuturegetDataStreamSnapshots()async{//Getcur

dart - 链式 future 不按顺序执行

我目前正在从蓝牙设备读取变量。这显然会花费不确定的时间,所以我正在使用future(此方法在我下面的代码中为readCharacteristic)。一次不能进行多个读取操作-如果在第一个操作仍在进行时启动第二个读取操作,Flutter将抛出错误。我的理解是,使用.then()将futures链接在一起只会允许下一个语句在前一个调用完成时执行。这个想法似乎是正确的,直到我尝试读取第三个值-即由于重叠的读取事件而引发错误。这是我的代码:readCharacteristic(scanDurationCharacteristic).then((list)=>sensorScanDuration

dart - 链式 future 不按顺序执行

我目前正在从蓝牙设备读取变量。这显然会花费不确定的时间,所以我正在使用future(此方法在我下面的代码中为readCharacteristic)。一次不能进行多个读取操作-如果在第一个操作仍在进行时启动第二个读取操作,Flutter将抛出错误。我的理解是,使用.then()将futures链接在一起只会允许下一个语句在前一个调用完成时执行。这个想法似乎是正确的,直到我尝试读取第三个值-即由于重叠的读取事件而引发错误。这是我的代码:readCharacteristic(scanDurationCharacteristic).then((list)=>sensorScanDuration

dart - 如何从 Dart 中返回 future

我有一个执行一些异步操作的函数,我想将操作的状态返回给调用者。我怎样才能做到这一点?FuturesetData()async{Firestore.instance.collection("test").document('$id').setData({'id':'test'}).then((onValue){print('Datasetsuccess');returntrue;}).catchError((onError){print('DatasetError!!!');returnfalse;});}//Callingfinalstatus=awaitsetData();if(st

dart - 如何从 Dart 中返回 future

我有一个执行一些异步操作的函数,我想将操作的状态返回给调用者。我怎样才能做到这一点?FuturesetData()async{Firestore.instance.collection("test").document('$id').setData({'id':'test'}).then((onValue){print('Datasetsuccess');returntrue;}).catchError((onError){print('DatasetError!!!');returnfalse;});}//Callingfinalstatus=awaitsetData();if(st

flutter - Dart:可取消的后期延迟/ future

我是Flutter的新手,我想通过调用API从InputField翻译一些文本。但是我不想在每次击键时调用它,而是仅在用户暂停输入时调用它。在Android上,我只是将Handler类与postDelay()一起使用,并预先调用removeAllCallbacksAndMessages(null)。有没有办法在Dart上做类似的事情?这是我当前的代码:FuturegetTranslation(Stringquery,Languagefrom,Languageto)async{//cancelhereifacalltothisfunctionwaslessthan500millisago

flutter - Dart:可取消的后期延迟/ future

我是Flutter的新手,我想通过调用API从InputField翻译一些文本。但是我不想在每次击键时调用它,而是仅在用户暂停输入时调用它。在Android上,我只是将Handler类与postDelay()一起使用,并预先调用removeAllCallbacksAndMessages(null)。有没有办法在Dart上做类似的事情?这是我当前的代码:FuturegetTranslation(Stringquery,Languagefrom,Languageto)async{//cancelhereifacalltothisfunctionwaslessthan500millisago

flutter - 从 future 的功能中获取数据到文本小部件

我正在尝试使用Text实现一个Column:Column(children:[Text('datafromfuturefunction')],),我无法从initState()获取数据,因为initState()它只是void如果我直接从函数中获取数据Text(function)我明白了instanceoffunction函数:Futurecalculate(intindex)async{LocData_getUser=awaitgetLoc();doubleuLat=_getUser.latitude;doubleuLng=_getUser.latitude;doublepLat=p

flutter - 从 future 的功能中获取数据到文本小部件

我正在尝试使用Text实现一个Column:Column(children:[Text('datafromfuturefunction')],),我无法从initState()获取数据,因为initState()它只是void如果我直接从函数中获取数据Text(function)我明白了instanceoffunction函数:Futurecalculate(intindex)async{LocData_getUser=awaitgetLoc();doubleuLat=_getUser.latitude;doubleuLng=_getUser.latitude;doublepLat=p

dart - Future.wait() 用于多个 future

我试图在我的设备没有互联网连接时捕获错误。我已经构建了2个future的方法,1个用于导入json,1个用于查看数据库。我有一个futurebuilder,假设在构建GridView之前等待两个future完成,但由于连接错误,offlineFlashCardList似乎被过早调用。知道如何让它在调用快照错误之前等待两个future完成吗?import'package:flutter/material.dart';import'package:flutter/foundation.dart';import'package:baby_sound/strings.dart';import'