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

Vue3之路由的query參數(shù)和params參數(shù)用法

 更新時間:2024年03月18日 17:23:53   作者:小饅頭學(xué)python  
這篇文章主要介紹了Vue3之路由的query參數(shù)和params參數(shù)用法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

路由中的參數(shù)

在 Vue 中,路由參數(shù)是指在訪問不同頁面時傳遞的信息。

它們可以用來動態(tài)地構(gòu)建頁面內(nèi)容,實現(xiàn)頁面間的數(shù)據(jù)傳遞和狀態(tài)管理。

Vue 的路由系統(tǒng)提供了多種方式來處理路由參數(shù),包括動態(tài)路由、查詢參數(shù)和路由元信息等

query參數(shù)

我們接著使用上節(jié)用到的相關(guān)代碼,在路徑匹配后面我們加了一個問號,在問號后面我們加了一個參數(shù)

<template>
  <div class="plays">
    <!--導(dǎo)航區(qū)-->
    <ul>
      <li v-for="play in newList" :key="play.id">
        <RouterLink to="/plays/detail?a=1">{{play.title}}</RouterLink>
    </li>
    </ul>
    <!--展示區(qū)-->
    <div class="news-content">
      <RouterView></RouterView>
    </div>
  </div>
</template>

在地址欄我們可以清楚的看到,但是這也僅僅是淺淺看一看

接下來我們打開Detail.vue文件,我們導(dǎo)入一個useRoute

通過useRoute可以方便地訪問當(dāng)前路由的路徑、參數(shù)、查詢參數(shù)等信息,而不需要依賴于this.$route。

接下來我們應(yīng)該實例化一下函數(shù),之后我們就可以在上面的模版中盡顯表達(dá)了

<template>
    <ul class="news-list">
      <li>編號:{{ route.query.id }}</li>
      <li>標(biāo)題:{{ route.query.title }}</li>
      <li>內(nèi)容:{{ route.query.content }}</li>
    </ul>
  </template>

但是現(xiàn)在其實我們并不能匹配到id、title、content,可以匹配到的或許僅僅是a,然后顯示出1,接下來我們要解決這個問題

<template>
  <div class="plays">
    <!--導(dǎo)航區(qū)-->
    <ul>
      <li v-for="play in newList" :key="play.id">
        <RouterLink :to="`/plays/detail?id=${play.id}`">{{play.title}}</RouterLink>
    </li>
    </ul>
    <!--展示區(qū)-->
    <div class="news-content">
      <RouterView></RouterView>
    </div>
  </div>
</template>

這樣我們就可以點擊哪個出現(xiàn)哪個對應(yīng)的編號了

請?zhí)砑訄D片描述

修改后的如下

<RouterLink :to="`/plays/detail?id=${play.id}&title=${play.title}&content=${play.content}`">{{play.title}}</RouterLink>

上面的是第一種寫法

下面是第二種寫法

 <RouterLink 
          :to="{
            name:'detail',
            query:{
              id:play.id,
              title:play.title,
              content:play.content
            }
          }"
        >
          {{play.title}}
        </RouterLink>

params參數(shù)

還是需要useRoute的導(dǎo)入,接下來我們需要修改一下index.ts中的path

后面的問號表示可有可無

path:'Detail/:id/:title/:content?',

模版這里也要修改一下

<template>
    <ul class="news-list">
      <li>編號:{{ route.params.id }}</li>
      <li>標(biāo)題:{{ route.params.title }}</li>
      <li>內(nèi)容:{{ route.params.content }}</li>
    </ul>
  </template>

同樣也有兩種寫法

  </RouterLink> -->
          <!-- <RouterLink :to="`/news/detail/${play.id}/${play.title}/${play.content}`">{{play.title}}</RouterLink> -->
          <RouterLink 
          :to="{
            name:'Detail',
            params:{
              id:play.id,
              title:play.title,
              content:play.content
            }
          }"
        >
          {{play.title}}
        </RouterLink>

綜上所述:

1:傳遞params參數(shù)時,若使用to的對象寫法,必須使用name配置項,不能用path

2:傳遞params參數(shù)時,需要提前在規(guī)則中占位。

區(qū)別和適用場景

  • Params 參數(shù) 適用于標(biāo)識資源、動態(tài)路由等需要作為路由一部分的信息,如 /user/:id;
  • Query 參數(shù) 適用于配置項、篩選條件等不需要作為路由一部分的可選參數(shù),如 /user?id=123。

總結(jié)

路由參數(shù)是 Vue 路由系統(tǒng)中非常重要的一部分,通過動態(tài)路由參數(shù)、查詢參數(shù)和路由元信息,我們可以實現(xiàn)更靈活的頁面導(dǎo)航和數(shù)據(jù)傳遞。

熟練掌握這些技巧可以幫助我們更好地構(gòu)建復(fù)雜的單頁面應(yīng)用

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue表格顯示字符串過長的問題及解決

    vue表格顯示字符串過長的問題及解決

    這篇文章主要介紹了vue表格顯示字符串過長的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Vue?Cli中的環(huán)境變量和模式

    Vue?Cli中的環(huán)境變量和模式

    這篇文章主要介紹了Vue?Cli中的環(huán)境變量和模式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vuex獲取state對象中值的所有方法小結(jié)(module中的state)

    vuex獲取state對象中值的所有方法小結(jié)(module中的state)

    這篇文章主要介紹了vuex獲取state對象中值的所有方法小結(jié)(module中的state),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 使用vue2.6實現(xiàn)抖音【時間輪盤】屏保效果附源碼

    使用vue2.6實現(xiàn)抖音【時間輪盤】屏保效果附源碼

    前段時間看抖音,有人用時間輪盤作為動態(tài)的桌面壁紙,一時間成為全網(wǎng)最火的電腦屏保,后來小米等運用市場也出現(xiàn)了【時間輪盤】,有點像五行八卦,感覺很好玩,于是突發(fā)奇想,自己寫一個網(wǎng)頁版小DEMO玩玩,需要的朋友可以參考下
    2019-04-04
  • Vue服務(wù)端渲染和Vue瀏覽器端渲染的性能對比(實例PK )

    Vue服務(wù)端渲染和Vue瀏覽器端渲染的性能對比(實例PK )

    這篇文章主要介紹了Vue服務(wù)端渲染和Vue瀏覽器端渲染的性能對比(實例PK ),非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • Vue中CSS?scoped的原理詳細(xì)講解

    Vue中CSS?scoped的原理詳細(xì)講解

    在組件中增加的css加了scoped屬性之后,就在會在當(dāng)前這個組件的節(jié)點上增加一個data-v-xxx屬性,下面這篇文章主要給大家介紹了關(guān)于Vue中CSS?scoped原理的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • 簡單理解vue中el、template、replace元素

    簡單理解vue中el、template、replace元素

    這篇文章主要幫助大家簡單理解vue中el、template、replace元素,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • webpack dev-server代理websocket問題

    webpack dev-server代理websocket問題

    這篇文章主要介紹了webpack dev-server代理websocket問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • vue3+element-plus 實現(xiàn)動態(tài)菜單和動態(tài)路由的渲染的項目實踐

    vue3+element-plus 實現(xiàn)動態(tài)菜單和動態(tài)路由的渲染的項目實踐

    本文主要介紹了vue3+element-plus 實現(xiàn)動態(tài)菜單和動態(tài)路由的渲染的項目實踐,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11
  • 使用Pinia Persistedstate插件實現(xiàn)狀態(tài)持久化的操作方法

    使用Pinia Persistedstate插件實現(xiàn)狀態(tài)持久化的操作方法

    Pinia 作為 Vue 的新一代狀態(tài)管理工具,以其輕量化和易用性受到開發(fā)者的喜愛,然而,Pinia 默認(rèn)使用內(nèi)存存儲狀態(tài),為了解決這個問題,我們可以借助 Pinia Persistedstate 插件來實現(xiàn)狀態(tài)的持久化存儲,本文將詳細(xì)介紹該插件的使用方法,需要的朋友可以參考下
    2024-11-11

最新評論