From 523a9b3de37c1feb108c16cbee422cd5c27203c7 Mon Sep 17 00:00:00 2001 From: Pan Date: Wed, 17 May 2017 17:53:37 +0800 Subject: [PATCH] add promise --- src/store/modules/permission.js | 39 ++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/src/store/modules/permission.js b/src/store/modules/permission.js index e1d74371..be98a463 100644 --- a/src/store/modules/permission.js +++ b/src/store/modules/permission.js @@ -24,25 +24,28 @@ const permission = { actions: { // s GenerateRoutes({ commit }, data) { - const { roles } = data; - const accessedRouters = asyncRouterMap.filter(v => { - if (roles.indexOf('admin') >= 0) return true; - if (hasPermission(roles, v)) { - if (v.children && v.children.length > 0) { - v.children = v.children.filter(child => { - if (hasPermission(roles, child)) { - return child - } - return false; - }); - return v - } else { - return v + return new Promise(resolve => { + const { roles } = data; + const accessedRouters = asyncRouterMap.filter(v => { + if (roles.indexOf('admin') >= 0) return true; + if (hasPermission(roles, v)) { + if (v.children && v.children.length > 0) { + v.children = v.children.filter(child => { + if (hasPermission(roles, child)) { + return child + } + return false; + }); + return v + } else { + return v + } } - } - return false; - }); - commit('SET_ROUTERS', accessedRouters); + return false; + }); + commit('SET_ROUTERS', accessedRouters); + resolve(); + }) } } };