成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Vue 路由 過(guò)渡動(dòng)效 數(shù)據(jù)獲取

asce1885 / 3144人閱讀

摘要:在數(shù)據(jù)獲取期間顯示加載中之類的指示。導(dǎo)航完成之前獲取導(dǎo)航完成前,在路由的鉤子中獲取數(shù)據(jù),在數(shù)據(jù)獲取成功后執(zhí)行導(dǎo)航。

過(guò)渡動(dòng)效

是基本的動(dòng)態(tài)組件,所以我們可以用 組件給它添加一些過(guò)渡效果:


  
  
單個(gè)路由的過(guò)渡

上面的用法會(huì)給所有路由設(shè)置一樣的過(guò)渡效果,如果你想讓每個(gè)路由組件有各自的過(guò)渡效果,可以在各路由組件內(nèi)使用 并設(shè)置不同的 name。

基于路由的動(dòng)態(tài)過(guò)渡

還可以基于當(dāng)前路由與目標(biāo)路由的變化關(guān)系,動(dòng)態(tài)設(shè)置過(guò)渡效果



  

// 接著在父組件內(nèi)
// watch $route 決定使用哪種過(guò)渡
watch: {
  "$route" (to, from) {
    const toDepth = to.path.split("/").length
    const fromDepth = from.path.split("/").length
    this.transitionName = toDepth < fromDepth ? "slide-right" : "slide-left"
  }
}  
數(shù)據(jù)獲取

進(jìn)入某個(gè)路由后,需要從服務(wù)器獲取數(shù)據(jù)。例如,在渲染用戶信息時(shí),你需要從服務(wù)器獲取用戶的數(shù)據(jù)。我們可以通過(guò)兩種方式來(lái)實(shí)現(xiàn):

1.導(dǎo)航完成之后獲?。合韧瓿蓪?dǎo)航,然后在接下來(lái)的組件生命周期鉤子中獲取數(shù)據(jù)。在數(shù)據(jù)獲取期間顯示『加載中』之類的指示。

2.導(dǎo)航完成之前獲?。簩?dǎo)航完成前,在路由的 enter 鉤子中獲取數(shù)據(jù),在數(shù)據(jù)獲取成功后執(zhí)行導(dǎo)航。

導(dǎo)航完成后獲取數(shù)據(jù)

當(dāng)你使用這種方式時(shí),我們會(huì)馬上導(dǎo)航和渲染組件,然后在組件的 created 鉤子中獲取數(shù)據(jù)。這讓我們有機(jī)會(huì)在數(shù)據(jù)獲取期間展示一個(gè) loading 狀態(tài),還可以在不同視圖間展示不同的 loading 狀態(tài)。

假設(shè)我們有一個(gè) Post 組件,需要基于 $route.params.id 獲取文章數(shù)據(jù):

在導(dǎo)航完成前獲取數(shù)據(jù)

通過(guò)這種方式,我們?cè)趯?dǎo)航轉(zhuǎn)入新的路由前獲取數(shù)據(jù)。我們可以在接下來(lái)的組件的 beforeRouteEnter 鉤子中獲取數(shù)據(jù),當(dāng)數(shù)據(jù)獲取成功后只調(diào)用 next 方法。

下面是地址:https://github.com/haxxk/xu_s...
https://github.com/haxxk/xu_s...

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/91761.html

相關(guān)文章

  • Vue-router動(dòng)畫

    摘要:在數(shù)據(jù)獲取期間顯示加載中之類的指示。導(dǎo)航完成之前獲取導(dǎo)航完成前,在路由的鉤子中獲取數(shù)據(jù),在數(shù)據(jù)獲取成功后執(zhí)行導(dǎo)航。附上兩種數(shù)據(jù)獲取小例 vue-router 過(guò)渡動(dòng)效 組件也有動(dòng)畫切換效果 是基本的動(dòng)態(tài)組件,所以我們可以用 組件給它添加一些過(guò)渡效果: 單個(gè)路由的過(guò)渡 給每個(gè)添加特效 在組件中加上 中可以用那么命名 mode=out-in//設(shè)置先出還是...

    wushuiyong 評(píng)論0 收藏0
  • Vue Transition 實(shí)現(xiàn)類原生組件跳轉(zhuǎn)過(guò)渡動(dòng)畫

    摘要:官方文檔演示地址請(qǐng)?jiān)谝苿?dòng)端查看,端查看請(qǐng)打開移動(dòng)端調(diào)試模式前言看了挺多的框架都不帶過(guò)渡動(dòng)畫,今天心血來(lái)潮,就把自己平時(shí)用的動(dòng)效抽離出來(lái)。原理模版中使用了提供的封裝組件,配合類名在的六種不同的狀態(tài)過(guò)渡中切換。 官方文檔:https://cn.vuejs.org/v2/guide... 演示地址:http://www.coderlife.com (請(qǐng)?jiān)谝苿?dòng)端查看,PC端查看請(qǐng)打開移動(dòng)端調(diào)試...

    whatsns 評(píng)論0 收藏0
  • Vue.js路由管理器 Vue Router

    摘要:可以從其他文件進(jìn)來(lái)定義路由每個(gè)路由應(yīng)該映射一個(gè)組件。其中可以是通過(guò)創(chuàng)建的組件構(gòu)造器,或者,只是一個(gè)組件配置對(duì)象。我們晚點(diǎn)再討論嵌套路由。通過(guò)訪問(wèn)組件實(shí)例更新的時(shí)候路由離開以通過(guò)來(lái)取消。路由懶加載參考路由懶加載 起步 HTML Hello App! Go to Foo Go to Bar JavaS...

    崔曉明 評(píng)論0 收藏0
  • [使用 Weex 和 Vue 開發(fā)原生應(yīng)用] 6 使用 vue-router

    摘要:使用值來(lái)作路由。原生應(yīng)用本身就是多頁(yè)的場(chǎng)景,頁(yè)面間狀態(tài)的隔離比共享更重要一些。使用開發(fā)的是原生應(yīng)用,頁(yè)面棧的管理使用的也是原生的特性,沒(méi)有但是有模塊可以實(shí)現(xiàn)頁(yè)面的前進(jìn)和后退等操作。 系列文章的目錄在 ? 這里 (由于 我比較懶 最近一段時(shí)間在忙其他事,系列文章拖了好久終于又更新了。。。) 什么是 vue-router ? vue-router 官方文檔 vue-router 是針對(duì) V...

    leonardofed 評(píng)論0 收藏0
  • VueRouter進(jìn)階四(滾動(dòng)行為)

    摘要:滾動(dòng)行為使用前端路由,當(dāng)切換到新路由時(shí),想要頁(yè)面滾到頂部,或者是保持原先的滾動(dòng)位置,就像重新加載頁(yè)面那樣。這個(gè)方法返回滾動(dòng)位置的對(duì)象信息,長(zhǎng)這樣如果返回一個(gè)布爾假的值,或者是一個(gè)空對(duì)象,那么不會(huì)發(fā)生滾動(dòng)。 滾動(dòng)行為 使用前端路由,當(dāng)切換到新路由時(shí),想要頁(yè)面滾到頂部,或者是保持原先的滾動(dòng)位置,就像重新加載頁(yè)面那樣。 vue-router 能做到,而且更好,它讓你可以自定義路由切換時(shí)頁(yè)面...

    kumfo 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<