【问题标题】:How to Assign User Permission Via CheckboxList Using MERN如何使用 MERN 通过 CheckboxList 分配用户权限
【发布时间】:2020-12-15 22:13:40
【问题描述】:

我正在尝试使用复选框列表通过 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 的复选框列表分配用户权限,谢谢大家的帮助,您的答案将深深受到赞赏。 :)

这是我想要的:

【问题讨论】:

  • 你想创建一种用户权限管理页面吗?还是要确保只有特定用户才能访问 /react-route1 、 /react-route2 等?
  • @JRichardsz 是的,一个用户权限管理页面
  • 请您添加您所需表格的屏幕吗?例如查看pentaho-bi-suite.blogspot.com/2014/11/…这个页面,我们可以看到经典的用户创建、角色和操作管理。这是你需要的吗?
  • 如果您正在寻找创建用户权限/角色管理应用程序,请查看这篇非常详细的帖子 - jasonwatmore.com/post/2018/11/28/…。作者在使用这个Node后端的前端也有一篇非常详细的帖子——jasonwatmore.com/post/2019/02/01/…
  • 我的意思是制作用户管理页面,您可以在其中使用复选框列表授予权限

标签: node.js reactjs mongodb express user-permissions


【解决方案1】:

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

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

【讨论】:

  • 感谢您的回答,但我希望通过复选框列表授予用户权限,例如创建用户检查
  • 您正在比较 2 个字符串,因此对于 javascript,比较语句应该是 user.role === "SuperAdmin" 而不是 user.role == “SuperAdmin” 使用三等号。
【解决方案2】:

我认为当您从其中一条私有路由发出请求时,您需要联系服务器。您可以通过 Axios 从那里发送帖子/补丁更新。我们需要查看组件内发生的情况,以帮助您解决复选框问题。

【讨论】:

    猜你喜欢
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 2021-08-07
    • 2023-01-08
    • 1970-01-01
    • 2011-03-14
    • 2014-04-04
    • 2022-10-19
    相关资源
    最近更新 更多