首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何删除防火墙集合中的当前用户文档?

如何删除防火墙集合中的当前用户文档?
EN

Stack Overflow用户
提问于 2022-03-22 12:14:06
回答 1查看 260关注 0票数 1

我正在添加一个按钮在我的颤音应用程序,允许用户删除他们的帐户。我还想同时删除防火墙中的用户文档。我试图使用下面的代码来实现这一点,但面临一个错误。

在下面的代码中,我得到的用户uid与用户的doc名称相同:

代码语言:javascript
复制
CollectionReference users = FirebaseFirestore.instance.collection('users');

final FirebaseAuth auth = FirebaseAuth.instance;
final User? user = auth.currentUser;
final uid = user?.uid;
final authService = Provider.of<AuthService>(context);

现在,我将删除用户集合中当前用户的文档:

代码语言:javascript
复制
ElevatedButton(
              onPressed: ()async{
               await users.doc(uid).delete();  //delete doc
                user!.delete().then((value) async { //delete user
                await authService.signOut();
                Navigator.pushAndRemoveUntil(
                    context,
                    MaterialPageRoute(
                    builder: (context) => LoginScreen(),
                    ),
                   (Route<dynamic> route) => false);
                    });
              },

但这会在按下时抛出一个错误:

代码语言:javascript
复制
type 'Null' is not a subtype of type 'Map<String, dynamic>' in type cast

The relevant error-causing widget was
StreamBuilder<DocumentSnapshot<Object?>>
lib\screens\quiz_screen.dart:616
When the exception was thrown, this was the stack
#0      CoinsContainer.build.<anonymous closure>
lib\screens\quiz_screen.dart:630

这个错误在任何我有Streambuilder的地方都会重复。为什么会发生此错误,我还需要如何从防火墙中删除当前的用户文档?

EN

回答 1

Stack Overflow用户

发布于 2022-03-22 12:36:10

当使用它们的页面弹出时,您是否释放这些流?在我看来,删除用户似乎很好,但是您的流随后尝试从Firestore中获取已删除用户的数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71571894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档