1. 程式人生 > 其它 >layout(母版頁)動態導航欄+驗證頁面許可權思路

layout(母版頁)動態導航欄+驗證頁面許可權思路

NavTreeList是後臺返回的樹形結構的選單列表,這個結構有一個介面的許可權管理介面,控制該使用者可以訪問哪幾個頁面
TabMenu(T_Item.NavURL,T_Item.NavCode)是一個自定義的方法,點選該節點可以跳轉到該介面

這是tabmenu的內部方法,夾菜你點選的頁面,
.layui-body是 @RenderBody() 的外層div的class子介面的內容都在這裡面所以需要清空
因為我們做了動態的導航欄,說明某些介面是一些使用者無法看到的,所以如果通過路徑訪問,我們
可以在控制器加一個許可權過濾器,避免使用者直接通過路徑訪問
這是驗證頁面許可權的過濾器,可以參考
https://www.cnblogs.com/myleave/p/13952689.html
關於驗證頁面許可權的思路還是去資料庫查是否有這個頁面的許可權,如果有沒問題沒有的話就重定向到首頁或者報錯頁
$(".layui-body").empty();//清空子頁面
                    $(".layui-body").append('<div class=\"spinner\"></div>');
                    $(".layui-body").load(UrlData);

  



<el-menu v-cloak :default-active="MenuAutoSetting" class="el-menu-vertical-demo"
:collapse="isCollapse" :unique-opened="true" :background-color="ThemeSetting" active-text-color="#409EFF"> <template v-for="(item,index) in NavTreeList"> <el-submenu v-if="item.children.length>0" :index="item.NavCode" :key="index"
v-cloak> <template slot="title"> <i :class="'layui-icon '+item.IconStr" style="font-size:16px;"></i> <span v-cloak slot="title">{{item.NavName}}</span> </template> <template v-for="(T_Item,T_index) in item.children" v-cloak> <el-menu-item :index="T_Item.NavCode" v-on:click="TabMenu(T_Item.NavURL,T_Item.NavCode)">{{T_Item.NavName}}</el-menu-item> </template> </el-submenu> <el-menu-item v-else :index="item.NavCode" v-on:click="TabMenu(item.NavURL,item.NavCode)" :key="index"> <i :class="'layui-icon '+item.IconStr" style="font-size:16px;" v-on:click="TabMenu(item.NavURL,item.NavCode)"></i> <span slot="title" v-on:click="TabMenu(item.NavURL,item.NavCode)">{{item.NavName}}</span> </el-menu-item> </template> </el-menu>