如何使用MERN通过CheckboxList分配用户权限

问题描述

我正在尝试通过MERN使用复选框列表来授予用户权限,我已经尝试通过使用if和else语句提供固定权限来进行手动用户权限。这是一个示例:

 {user.role == "SuperAdmin" || user.role == "Admin" ? (
                <>
                  {/* Users */}
                  <PrivateRoute path="/admin/users" component={Users} exact />
                  <PrivateRoute
                    path="/admin/users/create"
                    component={AddUser}
                    exact
                  />
                  <PrivateRoute
                    path="/admin/users/edit/:id"
                    component={EditUser}
                    exact
                  />
              ) : (
                <div id="notfound">
                  <div class="notfound">
                    <div class="notfound-404">
                      <h1>Oops!</h1>
                    </div>
                    <h2>404 - You are not Authorized</h2>
                    <p>
                      The page you are looking for might have been removed had
                      its name changed or you are not authorized to access this
                      page.
                    </p>
                    <a href="#">Go To Homepage</a>
                  </div>
                </div>
              )}

如您所见,我在路由中使用了if和else语句,是否可以使用MERN的复选框列表提供任何软件包教程或任何示例代码来分配用户权限,谢谢大家的帮助,您的答案将非常有帮助不胜感激。 :)

这就是我想要的:

enter image description here

解决方法

我认为您需要添加一些条件,例如

{user && user !=null && user.role &&(user.role == "SuperAdmin" || user.role == "Admin")? (-- your if code) : (---your else code)};
,

我认为您从其中一条私人路线提出请求时需要联系服务器。您可以从那里通过Axios发送发布/补丁更新。我们需要查看组件中正在发生的事情,以帮助您解决复选框问题。