【问题标题】:Retrieve Image From Firebase with Streambuilder使用 Streambuilder 从 Firebase 检索图像
【发布时间】:2020-07-10 19:45:56
【问题描述】:

我正在尝试从 Firebase 检索 ProfileImageUrl,但在控制台内没有收到任何 redLines,但是当我运行代码时页面崩溃并且出现错误

在构建 StreamBuilder(dirty, state: _StreamBuilderBaseState>#d1650) 时抛出了以下断言: 'package:flutter/src/painting/_network_image_io.dart': 断言失败: line 22 pos 14: 'url != null': is not true.

有人知道我在做什么错吗?

body: StreamBuilder(
        stream: Firestore.instance.collection('users').snapshots(),
        builder: (context,snapshot){
          if(!snapshot.hasData) return Text('loading...');
          return Container(
//            width: 150.0,
          height: 300.0,
            margin: EdgeInsets.symmetric(vertical: 30.0, horizontal: 20.0),
            child: new ListView(
              scrollDirection: Axis.horizontal,
               children: snapshot.data.documents.map<Widget>((document){
                return new Container(
                  width: 200,
                  child: Card(
                    child: Stack(
                      children: <Widget>[
                        Image.network(document['ProfileImageUrl'])
                      ],
                    ),

提前谢谢大家

【问题讨论】:

  • 在您的错误文档中可以看到['ProfileImageUrl'] 在某些情况下为空。尝试打印 document['ProfileImageUrl'] 并确保它在任何情况下都不为空。

标签: firebase flutter google-cloud-firestore


【解决方案1】:

尝试将 if 语句 return 'Text('loading...')' 包裹在大括号中,然后使用 else 语句返回 Container()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-12
    • 2020-04-22
    • 2017-12-17
    • 2020-08-05
    • 1970-01-01
    • 2017-01-16
    • 1970-01-01
    • 2022-01-22
    相关资源
    最近更新 更多