ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 前端auth权限验证 > 为什么前端也做权限认证,权限认证不应该是后端做的吗? 这里的权限认证指的是前端判断是否有权限查看的数据(例如:添加、删除、编辑之类的按钮),这些只有在点击到对应的url之后,后端才会进行权限认证。 为了避免用户困扰,可以在此用上前端的权限认证,判断是否显示还是隐藏 ***** ## 视图页面内权限例子 * 通过php的`$auth`方法生成`layui-hide`样式属性。 ``` <button class="layui-btn layui-btn-sm {:$auth->check('admin.menu/add')?'':'layui-hide'}" data-open="{:url('add')}" title="添加"><i class="iconfont icon-add"></i>&nbsp;新增后台菜单</button> ``` ***** ## table表格内权限例子 * table表格里面,一种table表格`上方`的操作栏`toolbar`需要权限判断是否显示。 * 另外一种是table表格`里面`的列操作栏`operat`也需要权限判断是否显示。 * 需要在对应的表格的`dom`事先全好对应的权限规则。 * 权限规则为:`data-auth-`+ 规则名 * 例如:data-auth-add="{:auth('admin.manager/add')}",`add`就是对应的权限规则。 > 下方例子中共定义了:`add``edit``delete`权限规则 ~~~ <table class="layui-hide" id="currentTable" lay-filter="currentTable" data-auth-add="{:$auth->check('admin.manager/add')}" data-auth-edit="{:$auth->check('admin.manager/edit')}" data-auth-delete="{:$auth->check('admin.manager/del')}"> </table> ~~~ ***** ### 表格上方的`toolbar`权限验证 下面简单讲解权限验证,完整的`toolbar`的使用和配置请查看`table`模块。 * `toolbar`内置权限验证:`add`,`edit`,`delete`,`recyclebin`,`restore`,`destroy` ~~~ toolbar: ['refresh','add', 'delete'] ~~~ * 自定义`toolbar`, 在`auth`属性上填写`权限规则` ~~~ toolbar: ['refresh', [{ text: ' 添加', url: Table.init.add_url, class: 'layui-btn layui-btn-normal layui-btn-sm', title: '添加', auth: 'add', }], 'delete'], ~~~ ***** ### 表格内列操作`operat`的权限验证 * `operat`内置权限验证:`edit`,`restore`,`destroy`,`delete` ~~~ operat: ['edit', 'delete'] ~~~ * 自定义`operat`, 在`auth`属性上填写`权限规则` ~~~ operat: [ [{ class: 'layui-btn layui-btn-xs layui-btn-success', text: '编辑', auth: 'edit', url: Table.init.edit_url, extend: "lay-event='btn-editone'" }], 'delete'] ~~~