最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue之帶參數(shù)跳轉(zhuǎn)打開新頁面、新窗口

 更新時間:2023年04月13日 14:39:22   作者:小太陽...  
這篇文章主要介紹了vue之帶參數(shù)跳轉(zhuǎn)打開新頁面、新窗口方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

vue帶參數(shù)跳轉(zhuǎn)打開新頁面、新窗口

vue帶參數(shù)跳轉(zhuǎn)打開新頁面

this.$router.push

跳轉(zhuǎn)到指定URL,向history棧添加一個新的記錄,點擊后退會返回至上一個頁面

場景如下:點擊首頁的某一條任務的詳情按鈕,在當前頁面打開任務詳情頁面,關(guān)閉詳情彈框后返回首頁

代碼如下

  <span @click="watchDetail(scope.row)">詳情</span>
  // 本頁面跳轉(zhuǎn)到詳情
    watchDetail(item) {
      this.$router.push({
        path: '/smart/planned',
        query: {
          from: '/'
        }
      });
    }
// 點擊關(guān)閉回到首頁
    handleDetailClose() {
      if (this.$route.query.from) {
        this.$router.push({
          path: this.$route.query.from
        });
      } else {
 			....
      }
    },

注意:想要實現(xiàn)上述場景,還要配置vuex

vue帶參數(shù)跳轉(zhuǎn)打開新窗口

this.$router.resolve

跳轉(zhuǎn)到指定URL,并打開一個新的窗口

場景:點擊更多,打開一個新窗口

代碼如下:

   <el-button @click="showMoreWarn()">更多</el-button>

    showMoreWarn() {
      const { href } = this.$router.resolve({
        path: '/publicWarnTable',
        query: {
          starttime: ...,
          endtime: ...,
          type: ...,
          sender: ...
        }
      });
      window.open(href, '_blank');
    },

路徑

  {
    path: '/publicWarnTable',
    component: () => import('@/views/warn/publicWarnTable'),
    // component: resolve => require(['@/views/warn/publicWarnTable'], resolve),
    name: 'xxx平臺',
    hidden: true
  },

vue攜帶參數(shù)跳轉(zhuǎn)頁面

<router-link> 方式跳轉(zhuǎn)

1. 攜帶query參數(shù)

?<router-link to="/detail?id=001&title=消息001"> 消息001</router-link>

<router-link :to="{
? ? ? ? name: 'detail',
? ? ? ? path: '/detail',?
? ? ? ? query: {
? ? ? ? ? ? ? ? id: '001',
? ? ? ? ? ? ? ? title: '消息001'
? ? ? ? }
}"

注:此種方式不需要動路由配置,to屬性對象形式中name和path二選一即可 。

此時瀏覽器地址欄地址為:http://localhost:8080/detail?id=001&title=消息001 

接收參數(shù)為:

$route.query.xxx

2. 攜帶params參數(shù) 

<router-link :to="`/detail/${id}/${title}`"> {{ title }} </router-link>?

<router-link :to="{
? ? ? ? name: 'detail',
? ? ? ? path: '/detail',?
? ? ? ? params: {

? ? ? ? ? ? ? ? id: '001',
? ? ? ? ? ? ? ? title: '消息001'
? ? ? ? }
}"

注意:此種方式需要修改路由配置,且to的對象形式中只能用name匹配路由

{
? ? ? ?name: 'detail',
? ? ? ? path: '/detail/:id/:title'
? ? ? ? component: Detail
}?

此時瀏覽器地址欄地址為:http://localhost:8080/detail/001/消息001 

接收參數(shù)為:

$route.params.xxx

3.將參數(shù)轉(zhuǎn)換為props屬性

我們可以通過配置路由時的props屬性,將params/query攜帶的參數(shù),在組件中用props屬性來接收,這樣用時可以直接使用,就不需要$route.params.xxx/$route.query.xxx的形式了

配置方式:

{
? ? name:'detail',
? ? path:'/detail',
? ? component: Detail,
?
? ? /**
? ? 方式一,值為對象,對象中的key-value會以props的形式傳遞給Detail組件,
? ? 但是傳遞的值都是一樣的,不推薦
? ? props: {
? ? ? ? ?id: '123',
? ? ? ? ?title: '消息001',
? ? },
? ? **/
? ??
?
? ? /**
? ? 方式二,值為布爾值,若布爾值為真,就會把該組件收到的所有params參數(shù),以props的形式傳式傳遞給Detail組件, 但之這種方式只適用于params參數(shù)
? ? props: true,
? ? **/
? ? /**
? ? 方式三,值為函數(shù),內(nèi)置傳參$route,可以使用結(jié)構(gòu)賦值形式
? ? **/
? ? props({query}){
? ? ? ? return {id: query.id, title: query.title}
? ? },

還學到了一種結(jié)構(gòu)再結(jié)構(gòu)的形式

props({ query: { id, title } }) {

? ? ? ? return { id, title }

編程方式跳轉(zhuǎn)路由

通過編寫代碼的方式使路由發(fā)生跳轉(zhuǎn),跳轉(zhuǎn)方式有兩種,一種是push,一種是replace,他們都是$router上的函數(shù)(存在于VueRouter原型上)。此時攜帶參數(shù)方式為:

this.$router.push({
? ? name: ?'detail',
? ? params: {
? ? ? ? id: xxx,
? ? ? ? title: xxx
? ? },
? ? /**
? ? query: {
? ? ? ? id: xxx,
? ? ? ? title: xxx
? ? }
? ? **/
})
?
this.$router.replace({
? ? name: ?'detail',
? ? params: {
? ? ? ? id: xxx,
? ? ? ? title: xxx
? ? },
? ? /**
? ? query: {
? ? ? ? id: xxx,
? ? ? ? title: xxx
? ? }
? ? **/
}) ? ? ? 

注意:不論何種方式跳轉(zhuǎn),想要在標簽中接收到不同的params就需要在路由配置時用/:占位,不然只能接收到第一次打開時帶過來的參數(shù)。

總結(jié)

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

相關(guān)文章

  • Vue列表渲染的示例代碼

    Vue列表渲染的示例代碼

    這篇文章主要介紹了Vue列表渲染的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Vue編寫炫酷的時鐘插件

    Vue編寫炫酷的時鐘插件

    這篇文章主要為大家詳細介紹了Vue編寫炫酷的時鐘插件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • html2canvas使用文檔(vue舉例)

    html2canvas使用文檔(vue舉例)

    html2canvas.js是一款可以在網(wǎng)頁上實現(xiàn)頁面截圖的js,它使用了html5和css3的一些新功能特性,實現(xiàn)了在客戶端對網(wǎng)頁進行截圖的功能,這篇文章主要給大家介紹了關(guān)于html2canvas使用的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • 基于vue開發(fā)的在線付費課程應用過程

    基于vue開發(fā)的在線付費課程應用過程

    這篇文章主要介紹了基于vue開發(fā)的在線付費課程應用過程,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2018-01-01
  • 聊聊vue生命周期鉤子函數(shù)有哪些,分別什么時候觸發(fā)

    聊聊vue生命周期鉤子函數(shù)有哪些,分別什么時候觸發(fā)

    這篇文章主要介紹了聊聊vue生命周期鉤子函數(shù)有哪些,分別什么時候觸發(fā)?具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • elementui彈窗頁按鈕重復提交問題解決方法

    elementui彈窗頁按鈕重復提交問題解決方法

    本文主要介紹了elementui彈窗頁按鈕重復提交問題解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-08-08
  • 如何在Vue.JS中使用圖標組件

    如何在Vue.JS中使用圖標組件

    這篇文章主要介紹了如何在Vue.JS中使用圖標組件,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-08-08
  • Webpack打包圖片-js-vue 案例解析

    Webpack打包圖片-js-vue 案例解析

    在開發(fā)中我們會有各種各樣的模塊依賴,這些模塊可能來自于自己編寫的代碼,也可能來自第三方庫,本文給大家介紹Webpack打包圖片-js-vue的相關(guān)知識,感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • Vue-router結(jié)合transition實現(xiàn)app前進后退動畫切換效果的實例

    Vue-router結(jié)合transition實現(xiàn)app前進后退動畫切換效果的實例

    下面小編就為大家?guī)硪黄猇ue-router結(jié)合transition實現(xiàn)app前進后退動畫切換效果的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • vue cli中env的使用指南

    vue cli中env的使用指南

    眾所周知,一個項目在開發(fā)、測試與生產(chǎn)環(huán)境的各種配置變量是不一樣的,但在vue cli 3中通過指令vue create xxx創(chuàng)建的項目取消了默認的 config 和 build 文件夾,這導致剛?cè)胧值男』锇椴恢涝谀膬号渲铆h(huán)境變量,不過官方也提供了相應的配置方法,本文就來介紹一下
    2021-08-08

最新評論

六枝特区| 苍南县| 蓝山县| 阳谷县| 永靖县| 油尖旺区| 鲜城| 南开区| 安阳市| 商城县| 古田县| 新平| 蓬莱市| 井冈山市| 浦东新区| 正阳县| 密山市| 邯郸市| 黄平县| 宝坻区| 浦江县| 灵台县| 康保县| 麻阳| 龙泉市| 翁源县| 略阳县| 屯门区| 金阳县| 通榆县| 茶陵县| 林州市| 抚顺县| 屏南县| 河津市| 仙游县| 松原市| 丰台区| 南康市| 洮南市| 五常市|