91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue路由傳參頁面刷新參數丟失問題解決方案

發布時間:2020-09-22 15:00:08 來源:腳本之家 閱讀:173 作者:有夢想的咸魚前端 欄目:web開發

最近項目中涉及到跨頁面傳參數和后臺進行數據交互,看到需求之后第一反應就是用路由傳參來解決;Vue中給我們提供了三種路由傳參方式,下面我們一個一個的來看一下:

方法一:params傳參:

this.$router.push({
    name:"admin",
    //這里的params是一個對象,id是屬性名,item.id是值(可以從當前組件或者Vue實例上直接取)
    params:{id:item.id}
})    

//這個組件對應的路由配置
{
  //組件路徑
  path: '/admin',
  //組件別名
  name: 'admin',
  //組件名
  component: Admin,
}

通過params傳遞參數,如果我們想獲取id的 參數值,我們可以通過this.$route.params.id這種方式來打印出來就可以得到了;(注意:獲取參數的時候是$route,跳轉和傳參的時候是$router)

方法二:路由屬性配置傳參:

this.$router.push({
    name:"/admin/${item.id}",
})    

//這個組件對應的路由配置
{
  //組件路徑
  path: '/admin:id',
  //組件別名
  name: 'admin',
  //組件名
  component: Admin,
}

通過路由屬性配置傳參我們可以用this.$route.params.id來獲取到id的值,注意this.$router.push方法里面路徑帶的是值,路由配置項那里帶的是變量名(屬性名)來實現的對應;

以上兩種傳參方式基本上可以理解為ajax中的post請求方式,參數都是不可見的,但是上面兩種方法都有一個弊端,就是當頁面刷新了是獲取不到參數值的,那么有沒有一種方法是頁面刷新之后參數依然存在呢?

方法三:query傳參

this.$router.push({
    name:"/admin",
     query:{id:item.id}
})    
//這個組件對應的路由配置
{
  //組件路徑
  path: '/admin',
  //組件別名
  name: 'admin',
  //組件名
  component: Admin,
}

第三種方式是用query來傳參,這種方式是可以解決頁面刷新參數消失問題的,這種方式可以理解為是ajax中的get方法,參數是直接在url后面添加的,參數是可見的,所以解決頁面刷新參數消失問題建議使用方法三來解決;

其實解決頁面刷新參數丟失問題的方案還有很多,比如把參數存在sessionStorange或者localStorange中都是可行的,不過我們既然用vue框架,就要用vue的方式來解決問題。這里只是想告訴大家,問題的解決方案可以多種多樣,要學會用多種方式或者說多種方案來解決一個問題,不要有太多的局限性!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平山县| 博客| 武隆县| 辽中县| 常熟市| 安多县| 平罗县| 修文县| 封开县| 长海县| 城口县| 山东| 德清县| 万山特区| 新巴尔虎右旗| 油尖旺区| 临桂县| 朝阳区| 姜堰市| 江津市| 岑溪市| 莆田市| 万州区| 通州区| 盐城市| 朝阳县| 凤城市| 寻甸| 山阳县| 巴南区| 河池市| 洛阳市| 磐石市| 米脂县| 光山县| 珲春市| 五大连池市| 任丘市| 巴东县| 衡水市| 诏安县|