当我在initState()中调用readLocationData()时,我的代码遇到此错误:
未处理的异常:'GeoPoint'类型不是'Iterable'类型的子类型。
不确定如何解决此问题。我的Firebase Cloud Firestore有一个包含4个文档的列表,每个文档都有一个名为GeoPoint
的{{1}}字段,每个文档都有一个手工编码的纬度和经度。
geopoint
答案 0 :(得分:1)
该错误消息表明GeoPoint
object是不可迭代的,这是正确的。我不确定您期望>>> b'\xc1\xbf'.decode('utf8')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc1 in position 0: invalid start byte
>>> b'\xe0\x81\xbf'.decode('utf8')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe0 in position 0: invalid continuation byte
>>> b'\xf0\x80\x81\xbf'.decode('utf8')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf0 in position 0: invalid continuation byte
>>> b'\x7f'.decode('utf8')
'\x7f'
从那种意义上返回什么。
如果您希望从List.from(doc.data['geopoint'])
中获取经度和纬度,则必须在代码中显式访问这些属性。但是,那么我不确定您的GeoPoint
中的key
和value
会变成什么。