草庐IT

unique_future

全部标签

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'

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'

sqlite - Flutter:类型 'Future<dynamic>' 不是类型 'Widget' 的子类型

我正在使用sqlite将数据存储在我的Flutter应用程序中。我有一个模式bottomsheet,它用filterchips打开,当你选择一个时,它会将项目添加到数据库中。如果项目已经存在,则检查filterchip。当我调用数据库函数来检查该项目是否已经存在时,出现以下错误。我尝试过同时使用async和await。数据库查询代码://FINDTAGfindTag(inttagId)async{vardbConnection=awaitdb;varres=awaitdbConnection.query("$TABLE_NAME",where:"tagId=?",whereArgs:[