问题标签 [flutter-future]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
69 浏览

flutter - how create future function in flutter?

i trying to create post function in flutter here is my code:

but i got this error: The body might complete normally, causing 'null' to be returned, but the return type is a potentially non-nullable type. Try adding either a return or a throw statement at the end.dart(body_might_complete_normally) what should i do?

0 投票
1 回答
64 浏览

flutter - 如何在颤动中获得并行期货的通知

您好,我正在使用以下代码进行并行网络调用。

我需要更新每个 api 调用的状态。有没有办法知道哪个 api 调用已成功完成并更新状态。

如果我.then在个别期货中使用,结果列表包含 null。

0 投票
1 回答
50 浏览

flutter - 为什么 Future.Builder 中的快照从不出错?

为 FutureBuilder 生成 snapshot.error 的正确方法是什么?我有一个单例来处理 http 请求,有一个方法:

另一方面,我有一个带有 FutureBuilder 的小部件:

我究竟做错了什么?您能否指出我处理错误的正确方向?我想避免回调 catchError()。提前致谢。

0 投票
1 回答
131 浏览

flutter - 颤振等待不适用于 Firestore QuerySnapShot

我正在尝试获取用户联系人并在我的数据库(firestore)中搜索每个联系人的电话号码。我成功地实现了获取联系人并查询每个号码的 firestore,但是当我想等待 get() 时,查询的结果似乎并没有等待它。

我有一个 FutureBuilder,它的未来属性是以下函数:

这是调试控制台的输出

并且由于某种原因断点调试后不会继续

非常感谢任何帮助,ps:我认为这种针对每个循环的所有这些方法效率不高。如果您有更好的想法,请与我分享。

0 投票
1 回答
92 浏览

flutter - 在颤振代码中添加授权标头会返回错误响应,而相同的请求在邮递员中工作正常

我在颤动中遇到一个奇怪的错误,只需添加授权标头就可以让我出错。

我目前遇到的问题,

在我的代码中,如果我Authorization在上面的代码中添加我用箭头指向的标题,我会在控制台上收到一条错误消息,

D/libc-netbsd(32217): [getaddrinfo]: mtk 主机名=host_name_i_provided;服务名称=(空);缓存模式=(空),netid=0;标记=0;app_uid=10217; ai_addrlen=0;ai_canonname=(null); ai_flags=1024;ai_family=0 D/libc-netbsd(32217): getaddrinfo: host_name_i_provided 从代理获取结果 >> E/flutter (32217): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] 未处理的异常:FormatException: Unexpected字符(第 3 行,字符 1) E/flutter (32217): E/flutter (32217): ^ E/flutter (32217): E/flutter (32217): #0 _ChunkedJsonParser.fail (dart:convert-patch/ convert_patch.dart:1404:5) E/flutter (32217): #1
_ChunkedJsonParser.parseNumber (dart:convert-patch/convert_patch.dart:1271:9) E/flutter (32217): #2
_ChunkedJsonParser.parse (dart: convert-patch/convert_patch.dart:936:22) E/flutter (32217): #3
_parseJson (dart:convert-patch/convert_patch.dart:40:10) E/flutter (32217): #4 JsonDecoder.convert (dart:convert/json.dart:506:36) E/flutter (32217): #5 JsonCodec.decode (dart:convert/json.dart:157:41) E/flutter (32217): #6
_RescueMeFormPageState.submitData (package:redcross/Pages/Disaster/rescue_me_form_page.dart:57:21) E/flutter (32217 ): E/颤振 (32217):

但是,如果我删除该标头,我会得到以下有效响应,

I/flutter (32217): {status: 400, data: {code: TokenException, message: Authorization Token not found}}

我不知道为什么我会收到这个错误。

我想指出的还有一些事情是,该$at变量包含正确的访问令牌。我通过添加打印语句验证了这一点。所以这行代码'Authorization': 'Bearer $at',是有效的。

此外,如果我从邮递员那里提出相同的请求,我会得到有效的回复。

有人可以帮我找出解决此错误的方法。谢谢.....

0 投票
0 回答
24 浏览

flutter - 在颤动中将不同的标记图标添加到我的谷歌地图的几个位置不起作用

我在一些写着“不需要”的行前添加了一条评论。我添加了这个来标记我认为与问题无关的行。(我没有删除这些行的原因是,如果这些行与问题有关,读者也可以阅读它们。)

在上面的代码中,无论我如何尝试使用setCustomMarker我定义的函数,我在手机屏幕上看到的图标都是默认位置图标。

资产已正确添加到pubspec.yaml文件中。

如果有人可以向我指出我做错了什么以及如何解决这个问题,我会非常有帮助。谢谢。

0 投票
1 回答
56 浏览

flutter - '_Future 的实例' 而不是 Flutter 的 Translator 包中的输入值

这个范围给了我_Future的实例,但我想得到那个翻译的文本。

0 投票
3 回答
120 浏览

flutter - 调用 setState 时,我的有状态小部件不会更新其状态

背景

在有状态小部件的状态对象内,我有以下代码。

关于上述代码的详细信息

List<String> pendingJobs = [];是我期望完成状态更改的变量。

在上面调用的变量正下方定义的函数updateListWithResponseData采用 type 的参数List。它还负责调用另一个名为BackendApi.call().

我正在调用udateListWithResponseData()内部initState,对于它所采用的类型参数List,我给出了pendingJobs我定义的变量。(因为我是setStateupdateListWithResponseData()函数内部调用的,所以我期望调用时的状态pendingJobs会发生变化updateListWithResponseData。)

但是,我在上述观点中所期望的状态变化并没有发生。

BackendApi.call负责从给定的 url 获取数据,它需要两个回调函数,onSuccess它们onFailure负责根据数据获取是否成功执行必要的操作。

重要说明

从 中删除List jobs参数updateListWithResponseData并直接引用pendingJobs变量对我来说不是解决方案,因为我希望将调用的函数提取updateListWithResponseData到单独的 dart 文件并从不同的小部件中调用它。所以我必须List jobs在函数中有那个参数。


我尝试调试此问题一段时间,但找不到解决方案。如果有人能指出为什么状态pendingJobs没有改变以及如何真正改变它,那将非常有帮助。(谢谢。)


**编辑**

由于下面的很多评论似乎都围绕着该BackendApi.call()函数,并且由于我没有在我的原始帖子中包含该函数的代码,因此我编辑了这篇文章以包含该函数的代码。

0 投票
3 回答
777 浏览

flutter - 没有为“未来”类型定义吸气剂“长度”>'

我正在 Flutter 中编写一种待办事项列表,并启用了 null 安全性。我使用 sqflite 将待办事项列表存储在 sqlite db 上。

项目类如下:

我有一个名为 items_controller 的类,它充当 Item 类和 db_controller 类之间的中介。这是 items_controller 类:

鉴于此,从 list_builder (它使用 ListView.builder 方法)我想使用从数据库中查询的项目列表的长度作为索引来构建一个列表。但我有这个错误(如标题)[![screenshot][1]][1] [1]: https://i.stack.imgur.com/Z6VAh.png

我很确定调用 loadAllItems() 时得到的 Future<List> 应该有一个长度属性,因为它是一个列表,但我不确定,也许是因为它是一个未来列表?请帮忙!

编辑 我已经实现了 FutureBuilder,但我对 .length 属性没有运气:[![snapshot][2]][2] [2]: https://i.stack.imgur.com/QswA0.png

如果我仍然运行代码,我会收到以下错误:

0 投票
1 回答
31 浏览

flutter - 我的有状态小部件不会更新 ui,即使我正在调用 setState 并将正确的值传递给小部件类

我在颤振中遇到了一个我自己无法弄清楚的问题。

所以我有以下代码(只粘贴了代码的重要部分),

在上面的代码中,
我有一个名为bankName字符串数据类型的类变量。
_getFormData下面定义的方法bankName,调用另一个静态方法BackendApi.call(),该方法负责发出http请求以获取一些数据。接受 4 个命名参数,其中BackendApi.call()两个重要参数是onSuccessonFailed。这两个参数在数据获取成功与否的情况下都会调用回调函数。
如您所见,在onSuccess回调中,我将从 http 请求接收到的一些数据分配给bankName变量。
我还调用_getFormData内部@override initState()以确保在挂载小部件之前发出请求。

问题

即使bankName保存了我想要的数据,当该变量传递给小部件时,我的 UI 也不会更新!

➡ 我将正确的变量传递给小部件以更新 UI。我通过注释掉_getFormData函数并最初为 a 值分配一个值来确认这一点,bankName例如bankName = 'Hello'. 如果我这样做,UI 会更新为 value Hello。所以我将正确的变量传递给小部件。

谢谢!