登入許可權之簡易版動態路由 1

2022-01-13 05:40:58 字數 1755 閱讀 4426

login.vue

settimeout(() =>);

} else

); }

}, 100);

terout.json

[

, ]

router/rule.js

const _import = require('./_import_' + process.env.node_env); //

獲取元件的方法

export function

filterasyncrouter(asyncroutermap) else

}

if (route.children &&route.children.length)

return

true

; });

return

accessedrouters;

}

_import_development.js

module.exports = file => require('@/views/' + file + '.vue').default

//vue-loader at least v13.0.0+

_import_production.js

module.exports = file => () => import('@/views/' + file + '.vue')

router/index.js

//

import vue from 'vue';

import vuerouter from 'vue-router';

import routes from './router';

import cookies from 'js-cookie';

import from './rule';

import tools from '@/utils/tools';

import topbar from '@/utils/topbar';

vue.use(vuerouter);

const router = new

vuerouter();

router.beforeeach((to, from, next) =>

]);localstorage.removeitem('new');

router.addroutes(newroutes);

router.replace(c.path);

//replace,保證瀏覽器回退的時候能直接返回到上個頁面,不會疊加

} }

next();

});var getlasturl = (str, yourstr) => str.slice(str.lastindexof(yourstr)); //

取到瀏覽器出現**的最後"/"出現的後邊的字元

export const constantroutermap =routes;

export

default router;

總結: 1>動態路由addroutes新增需要在vue檔案中進行,在路由守衛中搞容易死迴圈

2>後台傳來的路由陣列肯定都是字串,特別注意

"component": "home",這個home得是個路徑,不能是字串,所以需要

filterasyncrouter這個函式去轉化,所以元件建的路徑很重要

許可權設定(簡易版)

我們有乙個表actions是用來設定對選單或者資料進行增刪改查,預覽審核等等許可權的二進位制值,許可權判斷採用二進位制比較,例如乙個使用者對入庫表的action二進位制值為110,10為預覽,110 10 010 那麼他有預覽的許可權 欄位名描述 menu name 選單名dataset name ...

python 使用者登入(簡易版)

一 簡易版使用者登入,此程式直到使用者輸入正確的使用者名稱和密碼,不然不會退出 1 name liangchen 2 passwd abc123 3 while true 4 username input username 5 password input password 6if username...

資料結構之簡易版hashmap

在程式設計中hashmap是一種強大的資料結構,可以說是程式設計利器,下面是我自己寫的簡易版hashmap。public class myhashmap transient entry table entry empty table 鍵值對數量 transient int size 載入因子 int...