首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >未处理异常: RangeError (索引):无效值:有效值范围为空:0

未处理异常: RangeError (索引):无效值:有效值范围为空:0
EN

Stack Overflow用户
提问于 2019-06-10 16:03:14
回答 2查看 15.7K关注 0票数 2

此方法一直在运行。我查过API了。如果API值更改,我将删除我的数据库并再次插入。用这种方式使用这样的场景对吗?(可以使用streamWidget或FutureWidget吗?如果可以的话?)

错误消息:

错误:flutter/lib/ui/ui_dart_state.cc(148)未处理异常: RangeError (索引):无效值:有效值范围为空:0

代码语言:javascript
运行
复制
 checkQuick(String url, String token) async {
    result =
        (await HelperDatabase1().displayGetUserPreference()).elementAt(0)?.data;
    final response = await http.get(
      '$url/nativeapi/v1.0/User/GetUserPreference',
      headers: {'Authorization': 'Bearer $token'},
    );
    final jsonResponse = json.decode(response.body);
    GetUserPreference model = GetUserPreference.fromJson(jsonResponse);
    var data = GetUserPreference(data: model.data);

    if (result != data.data) {
      await HelperDatabase1().deleteGetUserPreference();
      await HelperDatabase1().storeGetUserPreference(url, token);
    }
  }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-10 16:20:26

错误是因为displayGetUserPreference返回一个空列表,因此为了解决问题,在获取项目之前,您应该检查列表是否为空。

代码语言:javascript
运行
复制
final list =  (await HelperDatabase1().displayGetUserPreference());
if (list.isNotEmpty)
    result = list.elementAt(0).data;
票数 7
EN

Stack Overflow用户

发布于 2022-10-24 04:52:10

如果您对颤振包版本有这样的问题,请:

  1. 转到new_version.dart
  2. 将第183行改为:(elm) => elm.text.contains('key: \'ds:5\''),
  3. 停止调试会话,然后再次启动应用程序。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56529814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档