flutter Bad state No element报错

问题场景

在用flutter进行真机调试时,一旦修改代码并触发真机热更新时会报如下错误:
真机报错:
flutter Bad state No element报错_第1张图片
控制台报错:
flutter Bad state No element报错_第2张图片

问题解决

这里发现同样的错误报了很多个,这里分析是在渲染列表是发生了无element的错误,查看控制台发现此处报错:

  SingleMesCollection getUserMesCollection(String name) {
    return messageArray.firstWhere((item) => item.bothOwner.contains(name));
  }

就是一个普通的列表查找内容的操作,查询其api后发现firstWhere还可以接受第二个参数(orElse)作为无返回时的兜底,这里进行如下修改:

  SingleMesCollection getUserMesCollection(String name) {
    return messageArray.firstWhere((item) => item.bothOwner.contains(name), orElse: () => new SingleMesCollection());
  }

至此问题解决

你可能感兴趣的:(tips,前端)