欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue動態(tài)路由匹配和路由懶加載多種方法詳解

 更新時間:2023年06月13日 08:45:39   作者:C_心欲無痕  
這篇文章主要介紹了vue動態(tài)路由匹配和路由懶加載,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1,動態(tài)路由匹配

前言:

在日常開發(fā)中,有一個商品列表頁面,點擊每一項可以看到詳情頁面,且樣式都是一樣的,那樣我們可以封裝一個詳情頁面,路由為/detail 不同的數(shù)據(jù) id或唯一標識可以路由寫成 /detail/id,這樣獲取id值就可以請求不同的數(shù)據(jù)并展示了;

所以這種場景使用動態(tài)路由匹配是比較方便的;

動態(tài)路由匹配模式

你可以在同一個路由中設置有多個 路徑參數(shù),它們會映射到 $route.params 上的相應字段。例如

匹配模式匹配路徑$route.params
/users/:username/users/Eula{ username: 'Eula' }
/users/:username/age/:18/users/Eula/age/18{ username: 'Eula', postId: '18' }

上面 username對應的是Eula(尤菈) ;age對應的是18;

定義:

首先在路由列表定義一個動態(tài)路由,主要表現(xiàn)為 /:id 動態(tài)字段以冒號開頭;

// 這是動態(tài)路由 加上:/:id
      {
        path: '/detail/:id',
        name: 'Detail',
        meta: { title: '詳情頁面' },
        component: () => import('../views/routers/detail.vue'),
      },

使用:

在需要進行跳轉的地方直接在path后面添加參數(shù)即可,如下:

 this.$router.replace({path:'/detail/001'})

獲?。?/h3>

獲取傳過來的參數(shù)主要有以下幾種方式:

第一種

 created() {
    // 第一種:這里能夠獲取動態(tài)路由的傳參
    console.log('第一種獲取方式:', this.$route.params); 
  },

打印結果 :{id: ‘001’}

第二種

使用watch監(jiān)聽 路由的變化;

// 第二種:監(jiān)聽路由
  watch: {
    $route: {
      immediate: true,
      handler(newV, oldV) {
        console.log('第二種獲取方式:', newV.params); //{id: '001'}
      },
    },
  },

第三種

使用路由鉤子函數(shù)beforeRouteEnter 的to參數(shù)也能拿到id值;但想要獲取this需要使用vm;

  beforeRouteEnter(to, from, next) {
    if (to.params.id) {
      console.log('第三種獲取方式:', to.params);
      next((vm) => {
        // 通過 `vm` 訪問組件實例 相當于this
        // 此處可以請求數(shù)據(jù)
      });
    } else {
      next();
    }
  },

2,路由懶加載

當打包構建應用時,JavaScript 包會變得非常大,影響頁面加載。如果我們能把不同路由對應的組件分割成不同的代碼塊,然后當路由被訪問的時候才加載對應組件,這樣就會更加高效。

Vue Router 支持開箱即用的動態(tài)導入,這意味著你可以用動態(tài)導入代替靜態(tài)導入:

其實就是寫成 箭頭函數(shù)的形式:

// 將
// import UserDetails from './views/UserDetails.vue'
// 替換成
const UserDetails = () => import('./views/UserDetails.vue')

還可以把組件按組分塊進行打包在一起

使用 webpack有時候我們想把某個路由下的所有組件都打包在同個異步塊 (chunk) 中。只需要使用命名 chunk,一個特殊的注釋語法來提供 chunk name (需要 Webpack > 2.4):

const UserDetails = () =>
  import(/* webpackChunkName: "group-user" */ './UserDetails.vue')
const UserDashboard = () =>
  import(/* webpackChunkName: "group-user" */ './UserDashboard.vue')
const UserProfileEdit = () =>
  import(/* webpackChunkName: "group-user" */ './UserProfileEdit.vue')

webpack 會將任何一個異步模塊與相同的塊名稱組合到相同的異步塊中。

到此這篇關于vue動態(tài)路由匹配和路由懶加載的文章就介紹到這了,更多相關vue動態(tài)路由路由懶加載內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • vue使用blob下載文件遇到的問題小結

    vue使用blob下載文件遇到的問題小結

    Blob?對象表示一個不可變、原始數(shù)據(jù)的類文件對象,這篇文章主要介紹了vue使用blob下載文件遇到的問題記錄,需要的朋友可以參考下
    2024-02-02
  • Vue項目中實現(xiàn)描點跳轉scrollIntoView的案例

    Vue項目中實現(xiàn)描點跳轉scrollIntoView的案例

    這篇文章主要介紹了Vue項目中實現(xiàn)描點跳轉scrollIntoView的案例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue webpack實用技巧總結

    vue webpack實用技巧總結

    本篇文章給大家總結了vue+webpack的實用技巧以及相關實例代碼分享,有興趣的朋友可以參考學習下。
    2018-04-04
  • Vue之插件詳解

    Vue之插件詳解

    這篇文章主要為大家介紹了Vue之插件,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助,希望能夠給你帶來幫助
    2021-11-11
  • Vue-Router實現(xiàn)頁面正在加載特效方法示例

    Vue-Router實現(xiàn)頁面正在加載特效方法示例

    這篇文章主要給大家介紹了利用Vue-Router實現(xiàn)頁面正在加載特效方法示例,文中給出了詳細的示例代碼,相信對大家具有一定的參考價值,有需要的朋友們下面來一起看看吧。
    2017-02-02
  • vue2?對全局自定義指令一次性進行注冊的方法

    vue2?對全局自定義指令一次性進行注冊的方法

    這篇文章主要介紹了vue2?對全局自定義指令一次性進行注冊,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • vue.js整合vux中的上拉加載下拉刷新實例教程

    vue.js整合vux中的上拉加載下拉刷新實例教程

    這篇文章主要給大家介紹了關于vue.js整合vux中上拉加載下拉刷新的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2018-01-01
  • SpringBoot+Vue3實現(xiàn)文件的上傳和下載功能

    SpringBoot+Vue3實現(xiàn)文件的上傳和下載功能

    上傳文件和下載文件是我們平時經(jīng)常用到的功能,接下來就讓我們用SpringBoot,Vue3和ElementPlus組件實現(xiàn)文件的上傳和下載功能吧,感興趣的朋友跟隨小編一起看看吧
    2023-01-01
  • axios攜帶cookie配置詳解(axios+koa)

    axios攜帶cookie配置詳解(axios+koa)

    這篇文章主要介紹了axios攜帶cookie配置詳解(axios+koa),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • Vuex入門之Module使用詳解

    Vuex入門之Module使用詳解

    這篇文章主要介紹了Vuex入門之Module使用詳解,由于使用單一狀態(tài)樹,應用的所有狀態(tài)會集中到一個比較大的對象,當應用變得非常復雜時,store?對象就有可能變得相當臃腫,需要的朋友可以參考下
    2023-11-11

最新評論