首页 > 解决方案 > Flutter 尝试删除代码,或者修复它之前的代码,以便可以访问

问题描述

我有一段代码我想尝试,但代码的开头变成了死代码。

Future createGroupChat(
      String groupName, String userName, memberList, memberIDList) async {
    DocumentReference groupDocRef = await groupCollection.add({
      'groupName': groupName,
      'admin': [userName],
      'members': memberList,
      'groupID': '',
    });

    await groupDocRef.update({
      'groupID': groupDocRef.id,
      'members': FieldValue.arrayUnion([userName])
    });

    DocumentReference userDocRef =
        FirebaseFirestore.instance.collection('users').doc(userID);
    return await userDocRef.update({
      'groups': FieldValue.arrayUnion([groupDocRef.id + '_' + groupName])
    });

    DocumentReference memberDocRef =
        FirebaseFirestore.instance.collection('users').doc(memberIDList);
    return await memberDocRef.update({
      'groups': FieldValue.arrayUnion([groupDocRef.id + '_' + groupName])
    });
  }

死代码从DocumentReference memberDocRef =. 如果我移动DocumentReference memberDocRef上面DocumentReference userDocRefDocumentReference userDocRef将成为死代码。

标签: firebaseflutterdartgoogle-cloud-firestore

解决方案


死代码意味着它无法到达,当你返回这里时,return await userDocRef.update({它下面的代码将永远不会被执行,只需删除第一个return

    DocumentReference userDocRef =
        FirebaseFirestore.instance.collection('users').doc(userID);
        await userDocRef.update({
      'groups': FieldValue.arrayUnion([groupDocRef.id + '_' + groupName])
    });

    DocumentReference memberDocRef =
        FirebaseFirestore.instance.collection('users').doc(memberIDList);
    return await memberDocRef.update({
      'groups': FieldValue.arrayUnion([groupDocRef.id + '_' + groupName])
    });

推荐阅读