首页 > 解决方案 > Flutter 'package:flutter/src/painting/_network_image_io.dart':断言失败:第 26 行 pos 16:'url != null':不正确

问题描述

我想从 Firestore 显示我的用户图像。但是显示错误。显示带有此错误的图像。'package:flutter/src/painting/_network_image_io.dart':断言失败:第 26 行 pos 16:'url != null':不正确。

class _ChatRoomListTileState extends State<ChatRoomListTile> {
  String profilePicUrl = "",
      name = "",
      username = "";

  getThisUserInfo() async {
    username =
        widget.chatRoomId.replaceAll(widget.myUserName, "").replaceAll("_", "");
    QuerySnapshot querySnapshot = await DatabaseMethods().getUserInfo(username);
    // print("something the data we are getting ${querySnapshot.docs[0].id}");
    name = "${querySnapshot.docs[0]["name"]}";
    profilePicUrl = querySnapshot.docs[0]["imgUrl"];
    setState(() {});
  }

@override
  void initState() {
    getThisUserInfo();
    super.initState();
  }

连续显示里面的图像

ClipRRect(
            borderRadius: BorderRadius.circular(30),
            child: Image(
              height: 45.0,
              width: 45.0,
              image: NetworkImage(profilePicUrl) == null
                  ? AssetImage('assets/images/emoteU.png')
                  : NetworkImage(profilePicUrl),
            ),
          ),

在此处输入图像描述

标签: firebaseflutterdartflutter-web

解决方案


请像这样设置你的字符串String profilePicUrl;试试这个也许对你有用

        ClipRRect(
            borderRadius: BorderRadius.circular(30),
            child: profilePicUrl.toString() == null
                ? const Image(
                    height: 45.0,
                    width: 45.0,
                    image: AssetImage('assets/images/emoteU.png'))
                : Image(
                    height: 45.0,
                    width: 45.0,
                    image: NetworkImage(profilePicUrl),
                  )),

推荐阅读