我有一个联系人列表,显示在API响应的Future Builder列表视图中,我在服务器中总共有23个联系人,但我想去掉其名字和姓氏为NULL的所有联系人。
在处理空异常之前:单击此处
代码:
Container(
height: 50,
color: Colors.white,
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment:
CrossAxisAlignment.start,
children: <Widget>[
contact.fields.all.firstname == null
? Container()
: Text(
contact.fields.all.firstname +
" " +
contact.fields.all.lastname,
style: TextStyle(fontSize: 16),
),
],
),
),
处理空异常后:单击此处
正如您从添加的代码和图像中看到的,为了处理异常,我只为所有名为null的联系人返回了一个空的容器,但现在我想更改它。我如何才能使那些名为firstname和lastname的联系人不再显示在屏幕上,而不是返回一个空容器?
在返回结果之前,可以从列表中删除null元素
// contacts = jsonDecode(someApiCall());
contacts.removeWhere((contact) => contact.fields.all.firstname == null && field.lastname == null);
return contacts;
如果您的数据是地图,则可以使用
myMap.removeWhere((key, value) => myMap[key] == null);
我对颤振世界还不熟悉,我犯了一个我不能完全理解的错误。 这是我的netwrok处理程序代码 这是我的代码,我调用网络处理器的获取方法 我得到了这个错误 [错误:flatter/lib/ui/ui\u dart\u state.cc(209)]未处理的异常:类型'\u InternalLinkedHashMap 谁能帮帮我吗?
REST_API提供如下JSON对象: 问题:我如何用Dart解析它?我没有让它运行。我的主要问题是,任何使用json的方法。解码将删除所有注释,因此字符串不再是字符串。 当然,我可以在开头和结尾去掉方括号,但这不是我所说的好编码。 也许你们中的一些人可以帮忙;-) 祝你有美好的一天!
在json中传递变量中的值时出现以下问题。encode没有得到例外的响应,但是我在传递值时没有得到正确的响应,我尝试使用map和不同的头无法得到确切的问题。 > 不工作 字符串getvalue=“响应值”;var_body=json。编码({“context”:getvalue}); var res=等待http。post(链接,标题:{“内容类型”:“应用程序/json”,},正文:\正文);
我可以使用“startAfter”和“limit”进行分页,但它有错误。 例如,在Firestore DB中,我有7条记录: 当页面大小为5时,第一页就可以了,因为我使用了: 它给了我1-5项。 当它加载第二页时,我使用了: 问题是第二页结果只有item7,item6消失了。“开始”也有同样的问题。 真希望它有“抵消”功能,有人有解决办法吗?
问题内容: 我有一个页面作为HtmlUnit中的UnexpectedPage返回,响应为JSON。我可以使用HTMLUnit进行解析还是需要一个额外的库? 问题答案: HtmlUnit不支持它。它最多可以执行JS函数。您需要事先检查返回的响应是否匹配,然后使用合适的工具进行解析。Google Gson 在此方面很有用。 如果JSON结构是事先已知的,则您甚至可以使用Gson将其转换为完全有价值的J
注意:同样的代码,当使用在另一个帐户的firebase工作,我似乎不能解决问题。