国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站集約化建設(shè)情況360推廣客服電話是多少

網(wǎng)站集約化建設(shè)情況,360推廣客服電話是多少,企業(yè)網(wǎng)站的制作用到的技術(shù),太倉市建設(shè)局網(wǎng)站🥔:如果事與愿違,那一定是上天另有安排 更多Vue知識(shí)請(qǐng)點(diǎn)擊——Vue.js VUE2-Day13 router-link的replace屬性編程式路由導(dǎo)航1、什么是編程式路由導(dǎo)航2、如何編碼3、使用案例示例說明 緩存路由組件兩個(gè)新的生命周期鉤子路由守衛(wèi)1、路由元信息2、…

🥔:如果事與愿違,那一定是上天另有安排

更多Vue知識(shí)請(qǐng)點(diǎn)擊——Vue.js

VUE2-Day13

    • router-link的replace屬性
    • 編程式路由導(dǎo)航
      • 1、什么是編程式路由導(dǎo)航
      • 2、如何編碼
      • 3、使用案例示例說明
    • 緩存路由組件
    • 兩個(gè)新的生命周期鉤子
    • 路由守衛(wèi)
      • 1、路由元信息
      • 2、全局路由守衛(wèi)
        • (1)全局前置守衛(wèi)
        • (2)全局后置守衛(wèi)
      • 3、獨(dú)享路由守衛(wèi)
      • 4、組件內(nèi)路由守衛(wèi)
        • (1)進(jìn)入組件時(shí)
        • (2)離開組件時(shí)
        • (3)給About組件添加一個(gè)路由守衛(wèi)
      • 5、組件從前置路由守衛(wèi)到失活的執(zhí)行流程
    • 路由器的兩種工作模式
      • 1、hash模式
      • 2、history模式
      • 3、解決history刷新報(bào)錯(cuò)問題

router-link的replace屬性

1.作用:控制路由跳轉(zhuǎn)時(shí)操作瀏覽器歷史記錄的模式
2.瀏覽器的歷史記錄有兩種寫入方式:分別為pushreplacepush是追加歷史記錄,replace是替換當(dāng)前記錄。路由跳轉(zhuǎn)時(shí)候默認(rèn)為push
3.如何開啟replace模式:<router-link replace .......>News</router-link>

  • 如果你用的是默認(rèn)的push,你點(diǎn)擊進(jìn)入到下一個(gè)路由的時(shí)候可以返回到上一個(gè)路由
  • 如果你用的是replace,你點(diǎn)擊進(jìn)入到下一個(gè)路由的時(shí)候,瀏覽器左上角不會(huì)有返回上一步

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

1、什么是編程式路由導(dǎo)航

不借助<router-link> 實(shí)現(xiàn)路由跳轉(zhuǎn),讓路由跳轉(zhuǎn)更加靈活,主要是用$router的三個(gè)api pushreplace,go(了解)來實(shí)現(xiàn)路由跳轉(zhuǎn),push是默認(rèn)帶緩存,replace是覆蓋緩存。

2、如何編碼

語法:

//$router的兩個(gè)API
this.$router.push({name:'xiangqing',params:{id:xxx,title:xxx}
})this.$router.replace({name:'xiangqing',params:{id:xxx,title:xxx}
})
// 點(diǎn)了以后瀏覽器的前進(jìn)后退操作
this.$router.forward() //前進(jìn)
this.$router.back() //后退
this.$router.go() //可前進(jìn)也可后退,5前進(jìn)5步,-3后退3步

3、使用案例示例說明

不借助router-link,可以實(shí)現(xiàn)往哪里跳轉(zhuǎn),什么時(shí)候跳轉(zhuǎn)(加定時(shí)器)
請(qǐng)?zhí)砑訄D片描述

請(qǐng)?zhí)砑訄D片描述

緩存路由組件

作用:讓不展示的路由組件保持掛載,不被銷毀(比如切換時(shí)要保留表單數(shù)據(jù))。
使用:在放router-view標(biāo)簽的地方,包邊包一個(gè)<keep-alive></keep-alive>,不加include默認(rèn)這里邊的組件都保持掛載,加include后邊跟要掛載的組件名字

// 緩存一個(gè)路由組件用 字符串
<keep-alive include="News"> <router-view></router-view>
</keep-alive>// 緩存多個(gè)路由組件用 數(shù)組 (使用 `v-bind`) 
<keep-alive :include="['News', 'Message']"><router-view></router-view>
</keep-alive>

注意:

  • 緩存里面的include里面的名字是組件名
  • 在需要被緩存組件的外側(cè)包裹keep-alive!不要去被緩存組件的template里邊包!

請(qǐng)?zhí)砑訄D片描述

如果像圖中<keep-alive include="News">這么寫的話,切換到Message時(shí)News不會(huì)銷毀,但是從Message切換到NewsMessage會(huì)銷毀。

兩個(gè)新的生命周期鉤子

我們之前學(xué)習(xí)了生命周期以及八個(gè)生命周期鉤子——點(diǎn)此復(fù)習(xí)生命周期

現(xiàn)在我們?cè)賹W(xué)習(xí)路由組件獨(dú)有的兩個(gè)鉤子,用于捕獲路由組件的激活狀態(tài)。

還記得之前做的那個(gè)字體閃爍案例嗎?在這里再做一遍,寫在News組件里,循環(huán)變化透明度,但是你想離開這個(gè)選項(xiàng)卡時(shí)讓定時(shí)器停,就要走銷毀流程,但是News里面的input輸入框數(shù)據(jù)要保留,又不能被銷毀

這種情況就很尷尬了,如果想要實(shí)現(xiàn)組件出現(xiàn)時(shí)開啟定時(shí)器,組件切換時(shí)關(guān)閉定時(shí)器且保留數(shù)據(jù),就要使用兩個(gè)新的生命周期鉤子,是路由組件獨(dú)有的鉤子:

1、activated:路由組件被激活時(shí)觸發(fā)(從沒有出現(xiàn)在你面前–>組件出現(xiàn)在你眼前)。 相當(dāng)于mounted
2、deactivated:路由組件失活時(shí)觸發(fā)。類似于beforeDestroy

<template><ul><li :style="{ opacity }">你好啊,小土豆</li><li>news001 <input type="text" /></li><li>news002 <input type="text" /></li><li>news003 <input type="text" /></li></ul>
</template><script>
export default {name: 'News',data() {return {a: false,opacity: 1,}},// mounted() {//   this.timer = setInterval(() => {//     this.opacity -= 0.01//     if (this.opacity <= 0) this.opacity = 1//   }, 16)// },// beforeDestroy() {// console.log('News組件即將被銷毀');//   clearInterval(this.timer)// },activated() {console.log('News組件被激活了')this.timer = setInterval(() => {this.opacity -= 0.01if (this.opacity <= 0) this.opacity = 1}, 16)},deactivated() {console.log('News組件失活了')clearInterval(this.timer)},
}
</script>

路由守衛(wèi)

作用:對(duì)路由進(jìn)行權(quán)限控制(我想讓你看哪個(gè),不想讓你看哪個(gè))
分類:全局守衛(wèi)、獨(dú)享守衛(wèi)、組件內(nèi)守衛(wèi)

1、路由元信息

是配置路由規(guī)則時(shí)專門提供的一個(gè)容器meta,用來存放我們自定義的一些屬性。

請(qǐng)?zhí)砑訄D片描述
請(qǐng)?zhí)砑訄D片描述
請(qǐng)?zhí)砑訄D片描述

2、全局路由守衛(wèi)

(1)全局前置守衛(wèi)

全局前置守衛(wèi):初始化時(shí)執(zhí)行、每次路由切換前執(zhí)行
使用下面的api,有三個(gè)參數(shù),分別是to到哪里去,from從哪里來,next下一步(放行)

router.beforeEach((to,from,next)=>{ })

其中router是自定義的路由規(guī)則的名字const router = new VueRouter({})
比如我要設(shè)置只有本地存儲(chǔ)中school為potato的可以查看新聞和消息,那就要在前置路由守衛(wèi)中設(shè)置,如果符合條件,才能放行

//全局前置路由守衛(wèi)————初始化的時(shí)候被調(diào)用、每次路由切換之前被調(diào)用
router.beforeEach((from, to, next) => {console.log('前置路由守衛(wèi)', from, to)//判斷是否需要鑒權(quán)// if (to.path === '/home/news' || to.path === '/home/message')// if (to.name === 'xinwen' || to.name === 'xiaoxi')if (to.meta.isAuth) {if (localStorage.getItem('school') === 'potato') {next() //放行} else {alert('學(xué)校名不對(duì),無權(quán)查看!')}} else {next()  //放行}
})

(2)全局后置守衛(wèi)

全局后置守衛(wèi):初始化時(shí)執(zhí)行、每次路由切換后執(zhí)行
使用下面的api,有兩個(gè)參數(shù),分別是to到哪里去,from從哪里來

注意后置守衛(wèi)沒有next

router.afterEach((to,from)=>{ })

比如我要設(shè)置不同的模塊顯示不同的網(wǎng)頁title,那么就要在等進(jìn)入該模塊成功后再設(shè)置,也就是要設(shè)置在全局后置守衛(wèi)中

//全局后置路由守衛(wèi)————初始化的時(shí)候被調(diào)用、每次路由切換之后被調(diào)用
//注意:后置路由守衛(wèi)沒有next
router.afterEach((from, to) => {console.log('后置路由守衛(wèi)', from, to)document.title = to.meta.title || '土豆土豆'
})

3、獨(dú)享路由守衛(wèi)

獨(dú)享路由守衛(wèi):某一個(gè)路由單獨(dú)享用的守衛(wèi)
注意:獨(dú)享路由只有beforeEnter,沒有afterEnter,但可以配合全局后置守衛(wèi)使用。

獨(dú)享路由守衛(wèi)的寫法和全局路由守衛(wèi)的一樣,但是要寫在指定的路由配置中。

請(qǐng)?zhí)砑訄D片描述

這樣配置了之后,查看新聞模塊時(shí)就會(huì)校驗(yàn)權(quán)限。

4、組件內(nèi)路由守衛(wèi)

組件內(nèi)路由守衛(wèi):在組件內(nèi)寫路由守衛(wèi),該組件獨(dú)有的路由守衛(wèi)。

(1)進(jìn)入組件時(shí)

beforeRouteEnter(to,from,next){}必須通過路由規(guī)則進(jìn)入,寫組件標(biāo)簽進(jìn)入不行,而且是進(jìn)入路由組件時(shí)調(diào)用(相當(dāng)于前置路由守衛(wèi)),to為當(dāng)前組件

(2)離開組件時(shí)

beforeRouteLeave(to,from,next)得觸發(fā)路徑的變化,前端瀏覽器檢測(cè)到了才允許離開, 離開組件時(shí)調(diào)用這個(gè)函數(shù),在后置路由守衛(wèi)之后。

(3)給About組件添加一個(gè)路由守衛(wèi)

<template><h2>我是About</h2>
</template><script>
export default {name: 'About',//通過路由規(guī)則,進(jìn)入該組件時(shí)被調(diào)用beforeRouteEnter(to, from, next) {console.log('About--beforeRouteEnter')if (to.meta.isAuth) {if (localStorage.getItem('school') === 'potato') {next()  //放行} else {alert('學(xué)校名不對(duì),無權(quán)查看!')}} else {next()  //放行}},//通過路由規(guī)則,離開該組件時(shí)被調(diào)用beforeRouteLeave(to, from, next) {console.log('About--beforeRouteLeave')next()  //放行},
}
</script>

5、組件從前置路由守衛(wèi)到失活的執(zhí)行流程

1.全局前置路由守衛(wèi) => 2.組件內(nèi)路由守衛(wèi)beforeRouteEnter => 3.全局后置路由守衛(wèi) => 4.mounted掛載組件 => 5.activated激活 => 6.組件內(nèi)路由守衛(wèi)beforeRouteLeave => 7.deactivated失活

路由器的兩種工作模式

1、hash模式

對(duì)于一個(gè)url來說,什么是hash值?——”#“以及后面的內(nèi)容就是hash值。

比如一個(gè)url為:

localhost:8080/#/home/message/detail

一般出現(xiàn)了”#“就知道這是hash模式,但是hash值不會(huì)包含在HTTP請(qǐng)求中,也就是說:hash值不會(huì)帶給服務(wù)器。

特點(diǎn):

  1. 地址中永遠(yuǎn)帶著#號(hào),不美觀 。

  2. 若以后將地址通過第三方手機(jī)app分享,若app校驗(yàn)嚴(yán)格,則地址會(huì)被標(biāo)記為不合法。

  3. 兼容性較好。

2、history模式

localhost:8080/home/message/detail

特點(diǎn):

1、地址干凈,美觀 。
2、兼容性和hash模式相比略差。
3、應(yīng)用部署上線時(shí)需要后端人員支持,解決刷新頁面服務(wù)端404的問題。

注意:路由器的默認(rèn)工作模式是hash模式

如果想改的話,去創(chuàng)建路由規(guī)則的地方更改mode屬性:

請(qǐng)?zhí)砑訄D片描述

3、解決history刷新報(bào)錯(cuò)問題

后端安裝中間件connect-history-api-fallback
這個(gè)插件可以幫助分辨是前端路由還是后端請(qǐng)求,從而避免報(bào)錯(cuò)

請(qǐng)?zhí)砑訄D片描述

http://aloenet.com.cn/news/39529.html

相關(guān)文章:

  • 詩敏家具網(wǎng)站是誰做的官網(wǎng)seo
  • h5網(wǎng)站建設(shè)文章淘寶指數(shù)查詢工具
  • wordpress mvc百度seo排名優(yōu)化提高流量
  • 深圳購物商城網(wǎng)站建設(shè)域名解析
  • 網(wǎng)站搜索排名高怎么做免費(fèi)百度下載
  • 自己怎么做交易網(wǎng)站網(wǎng)站里的友情鏈接
  • 發(fā)布網(wǎng)站需要備案交換鏈接營(yíng)銷
  • 網(wǎng)站建設(shè)大作業(yè)選題怎樣制作一個(gè)網(wǎng)頁
  • 做電影解析網(wǎng)站獨(dú)立站谷歌seo
  • 網(wǎng)站建設(shè) 成功案例杭州專業(yè)seo服務(wù)公司
  • 長(zhǎng)春財(cái)經(jīng)學(xué)院怎么樣好不好開魯seo服務(wù)
  • 淮南市建設(shè)工程質(zhì)量監(jiān)督中心網(wǎng)站想做網(wǎng)站找什么公司
  • 網(wǎng)站開發(fā)簡(jiǎn)歷網(wǎng)站站內(nèi)關(guān)鍵詞優(yōu)化
  • 廈門誰需要網(wǎng)站建設(shè)網(wǎng)絡(luò)推廣公司排行榜
  • java網(wǎng)站開發(fā)技術(shù)百度seo優(yōu)化
  • 北京海淀區(qū)信息科技有限公司seo關(guān)鍵詞優(yōu)化技術(shù)
  • 網(wǎng)站工作室設(shè)計(jì)廣州專做優(yōu)化的科技公司
  • 全網(wǎng)平臺(tái)整合營(yíng)銷推廣重慶百度快速優(yōu)化
  • 上海做網(wǎng)站開發(fā)的公司有哪些百度軟件商店下載安裝
  • 施工企業(yè)稅款繳納蘇州關(guān)鍵詞優(yōu)化seo
  • 用css做網(wǎng)站的好處百度指數(shù)的主要用戶是
  • 垂直 網(wǎng)站開發(fā)長(zhǎng)沙網(wǎng)站定制
  • 泉州市建設(shè)局網(wǎng)站廈門seo培訓(xùn)
  • wap手機(jī)建站平臺(tái)百度收錄需要多久
  • 網(wǎng)站即時(shí)到賬要怎么做建網(wǎng)站流程
  • 微博seo營(yíng)銷搜索引擎優(yōu)化的簡(jiǎn)稱
  • 什么網(wǎng)站做美式軟裝設(shè)計(jì)理念seo排名系統(tǒng)
  • 樂都區(qū)公司網(wǎng)站建設(shè)網(wǎng)站統(tǒng)計(jì)數(shù)據(jù)
  • 包頭教育平臺(tái)網(wǎng)站建設(shè)qq群推廣平臺(tái)
  • 三門峽建設(shè)銀行網(wǎng)站緬甸今日新聞