我如何在 flutter 中为管理员设置管理按钮

How can i set admin button for admins in flutter

我只想在我的应用程序中为管理员显示 floatactionbutton,但我不知道该怎么做。 你可以帮帮我吗? 顺便说一句,当我登录我的应用程序时,我的信息会更新它们的内容。 我尝试了 boolean isAdmin(还有很多方法 int 等),之后我手动设置,但之后它更新为 false 或者它删除了 auto。再次...

我只是想如果我是管理员,那么只有我可以使用这个按钮。

我的代码:

return Scaffold(
        floatingActionButton: provider.isAdmin == 1 ? CreateNewShop() : Container(),

        body: HomePageBody());

还有google签到码:

 Future login() async {
    isSigningIn = true;

    final user = await googleSignIn.signIn();
    if (user == null) {
      isSigningIn = false;
      return;
    } else {
      final googleAuth = await user.authentication;

      final credential = GoogleAuthProvider.credential(
        accessToken: googleAuth.accessToken,
        idToken: googleAuth.idToken,
      );
      await FirebaseAuth.instance.signInWithCredential(credential);
      final existingUserDocs = await FirebaseFirestore.instance
          .collection('Users')
          .where('uid', isEqualTo: user.id)
          .get();
      final uid = FirebaseAuth.instance.currentUser.uid;
      if (existingUserDocs.docs.isEmpty) {
        FirebaseFirestore.instance.collection('Users').doc(uid).set({
          'email': user.email,
          'username': user.displayName,
          'uid': uid,
          'userPhotoUrl': user.photoUrl,
          
        });
      } else {
        return null;
      }

      isSigningIn = false;
    }
  }

使用Visibility Widget 使Widget 隐藏和可见

有关详细信息,请访问 Flutter Visibility class

floatingActionButton: Visibility(
          visible: provider.isAdmin == 1,
          child: FloatingActionButton(
            onPressed: (){},
            child: Icon(Icons.add),
          ),
        ),