在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ vue路由能否根據(jù)條件判斷來決定是否存在?

vue路由能否根據(jù)條件判斷來決定是否存在?

如題,比如說一個(gè)網(wǎng)站登錄后獲取role,假如role='1'的時(shí)候側(cè)邊欄的某一項(xiàng)不顯示,那這個(gè)路由不就應(yīng)該去掉才會(huì)不顯示么?怎么根據(jù)這個(gè)條件去掉這個(gè)router呢?

{
    path: '/order',
    component: Layout,
    redirect: 'noredirect',
    icon: 'form',
    noDropdown: true,
    children: [{
        path: 'index',
        component: _import('order/index'),
        name: '預(yù)約'
    }]
},

舉個(gè)例子,比如說這個(gè)路由,在項(xiàng)目中是在側(cè)邊欄顯示的,如下:
圖片描述

當(dāng)role='1'時(shí),側(cè)邊欄顯示如下:
圖片描述

如何做到這種條件判斷呢?求解蟹蟹 0_0

回答
編輯回答
不討囍

去掉左邊很容易,但是通過url還是可以訪問到的,不過是障眼法罷了。如果要這樣做的話,直接對(duì)左邊菜單數(shù)組進(jìn)行修改就行了。
另外一種就是初始只掛載登錄和主頁(yè),登錄成功后在動(dòng)態(tài)掛載相應(yīng)的權(quán)限。這個(gè)你可以參考花褲衩出的 手摸手教程

https://segmentfault.com/a/11...

2018年6月28日 02:01
編輯回答
拼未來

可以通過導(dǎo)航守衛(wèi)實(shí)現(xiàn)。role就是你要判定的那個(gè)role

{
    path: '/index:role',
    component: someComponent,
    beforeEnter (to, from, next) {
        if (to.params.role===1)) {
          next(false)
        }else{
          next()
        }
    }
}

關(guān)于導(dǎo)航守衛(wèi)的更多信息你可以參考:
https://router.vuejs.org/zh-c...

但是如果你是要例子中的那種效果的話,我覺得你用v-show的效果更好

2017年10月26日 07:29
編輯回答
刮刮樂

這個(gè)不關(guān)路由的事 這種權(quán)限控制應(yīng)該在Vue中實(shí)現(xiàn)
你不顯示那一項(xiàng) 然后用路由導(dǎo)航攔截訪問

2018年9月6日 05:04