颤振:火力过滤

Posted

技术标签:

【中文标题】颤振:火力过滤【英文标题】:Flutter : firebase filteration 【发布时间】:2020-10-07 16:38:06 【问题描述】:

我是 Flutter 的新手,我正在通过 google 的 firebase 检索数据。 我遇到了一个错误。

[错误:flutter/lib/ui/ui_dart_state.cc(157)] 未处理的异常:类型 'String' 不是 'index' 的 'int' 类型的子类型

我的代码是正确的。

  var url = "https://<MyFirebaseProjectId>.firebaseio.com/products.json?auth=$authToken&orderBy='creatorId'&equalTo='$userId'"

但是当我交换单引号和双引号时,代码可以正常工作。

 var url = 'https://<MyFirebaseProjectId>.firebaseio.com/products.json?auth=$authToken&orderBy="creatorId"&equalTo="$userId"'

我不理解这种行为,因为两个代码 sn-p 都应该正常工作。

感谢任何帮助。 提前致谢。

【问题讨论】:

【参考方案1】:

虽然 Flutter/Dart 可以接受单引号和双引号作为字符串分隔符,但 Firebase REST API 只接受双引号。

因此,虽然您的两个 sn-ps 在 Dart/Flutter 看来可能相同,但 Firebase 服务器无法将第一个 sn-p 中的 ' 字符识别为字符串分隔符,并且不知道如何处理因为那个参数。

解决方案是始终在字符串中使用 ",因此在 Flutter/Dart 代码中使用 ' 作为(外部)字符串分隔符。

【讨论】:

以上是关于颤振:火力过滤的主要内容,如果未能解决你的问题,请参考以下文章

将图像从颤振上传到火力基地(没有任何反应)

颤振选择对话框 - 将过滤器字段滚动到视图中

颤振和火力基地和子集合

如何更新数组中的地图数据?颤振火力基地

我必须从哪里找到 DatabaseEvent 类? (颤振)(火力基地)

颤振谷歌地图和火力基地不能一起工作