国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

編程式導(dǎo)航、緩存路由組件、路由守衛(wèi)、Vue UI組件庫(kù)【VUE】

這篇具有很好參考價(jià)值的文章主要介紹了編程式導(dǎo)航、緩存路由組件、路由守衛(wèi)、Vue UI組件庫(kù)【VUE】。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

6.5 編程式路由導(dǎo)航

  1. 作用:不借助<router-link> 實(shí)現(xiàn)路由跳轉(zhuǎn),讓路由跳轉(zhuǎn)更加靈活

  2. 具體編碼:

    //$router的兩個(gè)API
    this.$router.push({
    	name:'xiangqing',
    		params:{
    			id:xxx,
    			title:xxx
    		}
    })
    
    this.$router.replace({
    	name:'xiangqing',
    		params:{
    			id:xxx,
    			title:xxx
    		}
    })
    this.$router.forward() //前進(jìn)
    this.$router.back() //后退
    this.$router.go() //可前進(jìn)也可后退
    

6.6 緩存路由組件

  1. 作用:讓不展示的路由組件保持掛載,不被銷毀
  2. 具體編碼:
<keep-alive include="News">
	<router-view></router-view>
</keep-alive>

6.7 兩個(gè)新的聲明周期鉤子

  1. 作用:路由組件所獨(dú)有的兩個(gè)鉤子,用于捕獲路由組件的激活狀態(tài)。
  2. 具體名字:
    (1)activated路由組件被激活時(shí)觸發(fā)
    (2)deactivated路由組件失活時(shí)觸發(fā)

6.8 路由守衛(wèi)

  1. 作用:對(duì)路由進(jìn)行權(quán)限控制
  2. 分類:全局守衛(wèi)、獨(dú)享守衛(wèi)、組件內(nèi)守衛(wèi)
  3. 全局守衛(wèi):
//全局前置守衛(wèi):初始化時(shí)執(zhí)行、每次路由切換前執(zhí)行
   router.beforeEach((to,from,next)=>{
   	console.log('beforeEach',to,from)
   	if(to.meta.isAuth){ //判斷當(dāng)前路由是否需要進(jìn)行權(quán)限控制
   		if(localStorage.getItem('school') === 'atguigu'){ //權(quán)限控制的具體規(guī)則
   			next() //放行
   		}else{
   			alert('暫無(wú)權(quán)限查看')
   			// next({name:'guanyu'})
   		}
   	}else{
   		next() //放行
   	}
   })
   
   //全局后置守衛(wèi):初始化時(shí)執(zhí)行、每次路由切換后執(zhí)行
   router.afterEach((to,from)=>{
   	console.log('afterEach',to,from)
   	if(to.meta.title){ 
   		document.title = to.meta.title //修改網(wǎng)頁(yè)的title
   	}else{
   		document.title = 'vue_test'
   	}
   })

router/index.js文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-437562.html

//該文件專門用于創(chuàng)建整個(gè)應(yīng)用的路由器
import VueRouter from 'vue-router'
//引入組件
import About from '../pages/About'
import Home from '../pages/Home'
import News from '../pages/News'
import Message from '../pages/Message'
import Detail from '../pages/Detail'

//創(chuàng)建一個(gè)路由器并暴露一個(gè)路由器
const router =  new VueRouter({
    routes: [
        {
            name: 'guanyu',
            path: '/about',
            component: About,
            meta: {title: '關(guān)于'}
        },
        {
            name: 'zhuye',
            path: '/home',
            component: Home,
            meta: {title: '主頁(yè)'},

            children: [
                {
                    path: 'news',
                    component: News,
                    meta: {isAuth: true, title: '新聞'}

                },
                {
                    name: 'xiaoxi',
                    path: 'message',
                    component: Message,
                    meta: {isAuth: true, title: '消息'},
                    children: [
                        {
                            name:'xiangqing',
                            path: 'detail',
                            component: Detail,
                            meta: {isAuth: true, title: '詳情'},

                            // props 的第一種寫法,值為對(duì)象,該對(duì)象中的所有 key-value都會(huì)以props的形式傳給Detail組件
                            // props: {a:1, b:'hello'}

                            // props 的第一種寫法,值為布爾值,若布爾值為真,就會(huì)把該路由組件收到的所有params參數(shù),以props形式傳給Detail組件
                            // props: true,

                            // props 的第一種寫法,值為函數(shù)
                            props($route){
                                return {id: $route.query.id, title: $route.query.title}
                            }
                        }
                    ]
                }
            ]
        },
        
    ]
})
// 全局前置路由守衛(wèi) ———— 初始化的時(shí)候被調(diào)用、每次路由切換之前被調(diào)用
router.beforeEach((to, from, next) => {
    console.log('前置路由守衛(wèi)', to, from);
    if(to.meta.isAuth){ //判斷是否需要鑒權(quán)
        if(localStorage.getItem('school') === 'xianwenli'){
            next()
        }else{
            alert('學(xué)校名不對(duì),無(wú)權(quán)限查看!')
        }
    }else{
        next()
    }
})

// 全局后置路由守衛(wèi) ———— 初始化的時(shí)候被調(diào)用、每次路由切換之后被調(diào)用
router.afterEach((to, from) => {
    console.log('后置路由守衛(wèi)', to, from);
    document.title = to.meta.title || '系統(tǒng)'
})
export default router
  1. 獨(dú)享守衛(wèi)
   beforeEnter(to,from,next){
   	console.log('beforeEnter',to,from)
   	if(to.meta.isAuth){ //判斷當(dāng)前路由是否需要進(jìn)行權(quán)限控制
   		if(localStorage.getItem('school') === 'atguigu'){
   			next()
   		}else{
   			alert('暫無(wú)權(quán)限查看')
   			// next({name:'guanyu'})
   		}
   	}else{
   		next()
   	}
   }
  1. 組件內(nèi)路由守衛(wèi)
   //進(jìn)入守衛(wèi):通過(guò)路由規(guī)則,進(jìn)入該組件時(shí)被調(diào)用
   beforeRouteEnter (to, from, next) {
   },
   //離開守衛(wèi):通過(guò)路由規(guī)則,離開該組件時(shí)被調(diào)用
   beforeRouteLeave (to, from, next) {
   }

6.9 路由器的兩種工作模式

  1. 對(duì)于一個(gè)url來(lái)說(shuō),什么是hash值?——#及其后面的內(nèi)容就是hash值。
  2. hash值不會(huì)包含在HTTP請(qǐng)求中,即:hash值不會(huì)帶給服務(wù)器。
  3. hash模式:
    (1)地址中永遠(yuǎn)帶著#號(hào),不美觀。
    (2)若以后地址通過(guò)第三方收集app分享,若app校驗(yàn)嚴(yán)格,則地址會(huì)被標(biāo)記為不合法。
    (3)兼容性好
  4. history模式:
    (1)地址干凈,美觀。
    (2)兼容性和hash模式相比略差。
    (3)應(yīng)用部署上線時(shí)需要后端人員的支持,解決刷新頁(yè)面服務(wù)端404的問(wèn)題。

第七章:Vue UI組件庫(kù)

7.1 移動(dòng)端常用 UI 組件庫(kù)

  1. Vant https://youzan.github.io/vant
  2. Cube UI https://didi.github.io/cube-ui
  3. Mint UI http://mint-ui.github.io

7.2 PC端常用 UI 組件庫(kù)

  1. Element UI https://element.eleme.cn
  2. IView UI https://www.iviewui.com

到了這里,關(guān)于編程式導(dǎo)航、緩存路由組件、路由守衛(wèi)、Vue UI組件庫(kù)【VUE】的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue--》深入理解 Vue 3 導(dǎo)航守衛(wèi),掌握前端路由的靈魂技能!

    Vue--》深入理解 Vue 3 導(dǎo)航守衛(wèi),掌握前端路由的靈魂技能!

    目錄 vue3導(dǎo)航守衛(wèi)講解與使用 element-ui的安裝與使用 配置路由和設(shè)置路徑別名

    2024年02月05日
    瀏覽(26)
  • 20230706----重返學(xué)習(xí)-vue路由導(dǎo)航守衛(wèi)相關(guān)-物美后臺(tái)管理系統(tǒng)

    常見面試題 面試題:介紹一下 vue-router 中的導(dǎo)航守衛(wèi)函數(shù) 面試題:介紹一下你對(duì)vue-router的理解? 導(dǎo)航守衛(wèi)函數(shù) 面試題:介紹一下 vue-router 中的導(dǎo)航守衛(wèi)函數(shù) 在每一次路由切換的時(shí)候,首先把路由匹配、導(dǎo)航確認(rèn)等事宜先處理好-在此期間會(huì)觸發(fā)一系列的鉤子函數(shù),這些函數(shù)

    2024年02月12日
    瀏覽(52)
  • Vue——路由守衛(wèi)(全局前置路由守衛(wèi)beforeEach、全局后置路由守衛(wèi)router.afterEach、獨(dú)享路由守衛(wèi)beforeEnter、組件內(nèi)路由守衛(wèi) )

    Vue——路由守衛(wèi)(全局前置路由守衛(wèi)beforeEach、全局后置路由守衛(wèi)router.afterEach、獨(dú)享路由守衛(wèi)beforeEnter、組件內(nèi)路由守衛(wèi) )

    ?作用:對(duì)路由進(jìn)行權(quán)限控制 分類:全局守衛(wèi)、獨(dú)享守衛(wèi)、組件內(nèi)守衛(wèi) 目錄 一、全局前置路由守衛(wèi)router.beforeEach(切換之前調(diào)用,to、from、next參數(shù)) 改進(jìn)代碼 二、全局后置路由守衛(wèi)router.afterEach( 切換之后調(diào)用,to、from參數(shù),沒(méi)有next參數(shù)) 三、獨(dú)享路由守衛(wèi)beforeEnter(某一

    2024年02月08日
    瀏覽(20)
  • 【vue2第十七章】VueRouter 編程式導(dǎo)航跳轉(zhuǎn)傳參(點(diǎn)擊按鈕跳轉(zhuǎn)路由和如何傳遞參數(shù))

    【vue2第十七章】VueRouter 編程式導(dǎo)航跳轉(zhuǎn)傳參(點(diǎn)擊按鈕跳轉(zhuǎn)路由和如何傳遞參數(shù))

    如何在js進(jìn)行跳轉(zhuǎn)路由 在一些需求中,我們需要不用點(diǎn)擊a標(biāo)簽或者router-link,但是也要實(shí)現(xiàn)路由跳轉(zhuǎn),比如登陸,點(diǎn)擊按鈕搜索跳轉(zhuǎn)。那么這種情況如何進(jìn)行跳轉(zhuǎn)呢? 直接再按鈕綁定的方法中寫 this.$router.push(\\\'路由路徑\\\') 即可。 代碼示范 this.$router.push(\\\"/跳轉(zhuǎn)路徑\\\") 或者 this

    2024年02月09日
    瀏覽(25)
  • vue3 setup語(yǔ)法糖 使用組件內(nèi)的路由守衛(wèi)beforeRouteEnter使用方法

    由于beforeRouteEnter在setup語(yǔ)法糖中是無(wú)法使用的,所以需要再起一個(gè)script標(biāo)簽 使用defineComponent方式來(lái)使用就可以了

    2024年02月11日
    瀏覽(24)
  • Vue2-導(dǎo)航守衛(wèi)

    在Vue中,導(dǎo)航守衛(wèi)是一組用于控制路由導(dǎo)航的鉤子函數(shù)。這些鉤子函數(shù)允許你在路由導(dǎo)航的不同階段執(zhí)行一些操作,比如在路由切換之前進(jìn)行驗(yàn)證、處理路由變化等。 Vue提供了三種類型的導(dǎo)航守衛(wèi): 全局前置守衛(wèi) :在路由切換之前執(zhí)行,適用于整個(gè)應(yīng)用的路由。 路由獨(dú)享的

    2024年01月23日
    瀏覽(19)
  • Vue 導(dǎo)航守衛(wèi)

    導(dǎo)航守衛(wèi)可以控制路由的訪問(wèn)權(quán)限,主要是用來(lái)監(jiān)聽路由的進(jìn)入和離開。 當(dāng)進(jìn)入或離開路由組件時(shí),可以通過(guò)導(dǎo)航守衛(wèi)做一些攔截,實(shí)現(xiàn)權(quán)限登錄等功能。 導(dǎo)航守衛(wèi)分為三種:全局守衛(wèi)、獨(dú)享守衛(wèi)、組件守衛(wèi)。 參數(shù)說(shuō)明: 每個(gè)導(dǎo)航守衛(wèi)都有三個(gè)參數(shù),全局后置守衛(wèi) afterEa

    2024年02月13日
    瀏覽(25)
  • Vue緩存路由組件

    作用:讓不展示的路由組件保持掛載,不被銷毀

    2024年02月12日
    瀏覽(22)
  • Vue3 中 導(dǎo)航守衛(wèi) 的使用

    Vue3 中 導(dǎo)航守衛(wèi) 的使用

    在編寫vue里的登錄注冊(cè)時(shí),我們始終繞不開對(duì)導(dǎo)航守衛(wèi)的使用,vue-router4.0版里有一些重要更新,在這里分享給大家。 正如其名, vue-router 提供的導(dǎo)航守衛(wèi)主要用來(lái)通過(guò)跳轉(zhuǎn)或取消的方式守衛(wèi)導(dǎo)航。這里有很多方式植入路由導(dǎo)航中:全局的,單個(gè)路由獨(dú)享的,或者組件級(jí)的。

    2024年02月02日
    瀏覽(27)
  • 前端vue入門(純代碼)35_導(dǎo)航守衛(wèi)

    前端vue入門(純代碼)35_導(dǎo)航守衛(wèi)

    星光不問(wèn)趕路人,時(shí)光不負(fù)有心人 【 33.Vue Router--導(dǎo)航守衛(wèi) 】 導(dǎo)航守衛(wèi) 正如其名, vue-router 提供的導(dǎo)航守衛(wèi)主要用來(lái)通過(guò)跳轉(zhuǎn)或取消的方式守衛(wèi)導(dǎo)航。有多種機(jī)會(huì)植入路由導(dǎo)航過(guò)程中:全局的, 單個(gè)路由獨(dú)享的, 或者組件級(jí)的。 記住 參數(shù)或查詢的改變并不會(huì)觸發(fā)進(jìn)入/離開的

    2024年02月16日
    瀏覽(19)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包