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

vue如何通過點擊事件實現(xiàn)頁面跳轉(zhuǎn)詳解

 更新時間:2022年07月10日 10:05:47   作者:瘋狂的小強呀  
頁面跳轉(zhuǎn),我們一般都通過路由跳轉(zhuǎn)實現(xiàn),通常情況下可直接使用router-link標(biāo)簽實現(xiàn)頁面跳轉(zhuǎn),下面這篇文章主要給大家介紹了關(guān)于vue如何通過點擊事件實現(xiàn)頁面跳轉(zhuǎn)的相關(guān)資料,需要的朋友可以參考下

前言

頁面跳轉(zhuǎn),我們一般都通過路由跳轉(zhuǎn)實現(xiàn),通常情況下可直接使用router-link標(biāo)簽實現(xiàn)頁面跳轉(zhuǎn),但是如果我們想通過點擊別的標(biāo)簽實現(xiàn)頁面跳轉(zhuǎn),怎么辦呢?這個時候我們就要用到this.$router.push()方法,下面來給大家簡單介紹一下使用!

this.$router.push()

1.首先我們要定義一個點擊事件

2.在定義事件中調(diào)用this.$router.push()方法

<template>
    <button @click = "handle">點擊跳轉(zhuǎn)</button>
</template>
<script>
    export default{
        methods:{
            handle (){
            //  路徑/home對應(yīng)我在router目錄下index.js中定義的path屬性值
                this.$router.push('/home');
            }
        }
    }
</script>

目標(biāo)跳轉(zhuǎn)頁面路由在router目錄下index.js定義如下:

export default new Router({
  routes: [
    {
      path: '/home',
      name:'Home',
      component: Home,
    },
 ]
})

this.$router.push()中的參數(shù)規(guī)則

參數(shù)為字符串,即路徑名稱

//  路徑/home對應(yīng)router目錄下index.js中定義的path屬性值
this.$router.push('/home');

參數(shù)為對象

//  對應(yīng)router目錄下index.js中定義的path
this.$router.push({path:'/home'});

參數(shù)為路由命名

//  對應(yīng)router目錄下index.js中定義的name
this.$router.push({name:'Home'});

帶傳遞參數(shù)

// params里面放置的是我們要傳遞過去的參數(shù)
this.$router.push({name:'Home',params:{user:'david'}});

帶查詢參數(shù)

// 帶查詢參數(shù),傳遞過去的內(nèi)容會自動拼接變成/home?user=david
this.$router.push({path:'/home',query:{user:'david'}});

參數(shù)的接收

當(dāng)我們使用params進(jìn)行傳參時,只需在接收參數(shù)的地方使用this.$route.params進(jìn)行接收即可

eg:

//傳參
this.$router.push({name:'Home',params:{user:'david'}});

// 在name為Home的組件中接收參數(shù)
const id=this.$route.params.id;
console.log(this.$route.params);//打印結(jié)果為{user:'david'}

當(dāng)我們使用query傳參時,只需在接收參數(shù)的地方使用this.$route.query進(jìn)行接收即可,用法同上

!?。∵@里有一個小細(xì)節(jié):$符號后面跟的是route不是router,跳轉(zhuǎn)的時候 $后面跟的是router?。。?/p>

注意

  • query傳參的參數(shù)會帶在url后邊展示在地址欄(/home?user=david),params傳參的參數(shù)不會展示到地址欄
  • 由于動態(tài)路由也是傳遞params的,所以在 this.$router.push() 方法中path不能和params一起使用,否則params將無效,需要用name來指定頁面
  • 我們也可以用this.$router.replace()來實現(xiàn)頁面跳轉(zhuǎn),二者的區(qū)別是push跳轉(zhuǎn)之后可以通過瀏覽器的回退鍵回到原來的頁面,而一旦使用replace跳轉(zhuǎn)之后,無法回到原來頁面

補充:VUE實現(xiàn)從一個頁面跳轉(zhuǎn)到另一個頁面的指定位置

例如,從網(wǎng)站的首頁點擊跳轉(zhuǎn)到指定頁面的底部。

首頁 home

<div @click="toPath('/targetPage#target')">
    <p>點擊跳轉(zhuǎn)</p>
</div>
methods:{
    //點擊跳轉(zhuǎn)方法
    toPath(path) {
        this.$router.push({path: path})
    }
}

跳轉(zhuǎn)到的頁面 targetPage

<div class="location" id="target">
    <p>指定位置</p>
</div>
//在mounted里
mounted() {
    var hash = window.location.hash;
    var index = hash.lastIndexOf("#");
    if (index != -1) {
       var id = hash.substring(index + 1, hash.length + 1);
       var div = document.getElementById(id);
       if (div) {
         setTimeout(function () {
           console.log($(div).offset().top);
           $('html, body').animate({scrollTop: $(div).offset().top - 43}, 500)
         }, 500);
       }
    }
}

親測有效 :D

總結(jié)

到此這篇關(guān)于vue如何通過點擊事件實現(xiàn)頁面跳轉(zhuǎn)的文章就介紹到這了,更多相關(guān)vue點擊事件實現(xiàn)頁面跳轉(zhuǎn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決Ant Design Modal內(nèi)嵌Form表單initialValue值不動態(tài)更新問題

    解決Ant Design Modal內(nèi)嵌Form表單initialValue值不動態(tài)更新問題

    這篇文章主要介紹了解決Ant Design Modal內(nèi)嵌Form表單initialValue值不動態(tài)更新問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • Vue使用axios進(jìn)行數(shù)據(jù)異步交互的方法

    Vue使用axios進(jìn)行數(shù)據(jù)異步交互的方法

    大家都知道在Vue里面有兩種出名的插件能夠支持發(fā)起異步數(shù)據(jù)傳輸和接口交互,分別是axios和vue-resource,同時vue更新到2.0之后,宣告不再對vue-resource更新,而是推薦的axios,今天就講一下怎么引入axios,需要的朋友可以參考下
    2024-01-01
  • vue獲取當(dāng)前激活路由的方法

    vue獲取當(dāng)前激活路由的方法

    下面小編就為大家分享一篇vue獲取當(dāng)前激活路由的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • vue2左側(cè)菜單欄收縮展開功能實現(xiàn)

    vue2左側(cè)菜單欄收縮展開功能實現(xiàn)

    vue2左側(cè)菜單欄收縮展開目前是非常常見的,我們在日常開發(fā)過程中經(jīng)常會碰到,這篇文章給大家介紹vue2左側(cè)菜單欄收縮展開功能,感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • 解決vue報錯'超出最大堆棧大小'問題

    解決vue報錯'超出最大堆棧大小'問題

    這篇文章主要介紹了解決vue報錯'超出最大堆棧大小'問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • vue中的計算屬性和偵聽屬性

    vue中的計算屬性和偵聽屬性

    這篇文章主要介紹了vue中的計算屬性和偵聽屬性,幫助大家更好的理解和學(xué)習(xí)vue框架的使用,感興趣的朋友可以了解下
    2020-11-11
  • vue中渲染對象中屬性時顯示未定義的解決

    vue中渲染對象中屬性時顯示未定義的解決

    這篇文章主要介紹了vue中渲染對象中屬性時顯示未定義的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • 詳解Vue中如何進(jìn)行狀態(tài)持久化

    詳解Vue中如何進(jìn)行狀態(tài)持久化

    在Vue應(yīng)用中,通常需要將一些狀態(tài)進(jìn)行持久化,以便在用戶關(guān)閉瀏覽器或刷新頁面后,常見的方法就是LocalStorage和SessionStorage,所以本文就來講講這兩種方法的具體實現(xiàn)吧
    2023-06-06
  • vue項目使用.env文件配置全局環(huán)境變量的方法

    vue項目使用.env文件配置全局環(huán)境變量的方法

    這篇文章主要介紹了vue項目使用.env文件配置全局環(huán)境變量的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Vue中img的src是動態(tài)渲染時不顯示的解決

    Vue中img的src是動態(tài)渲染時不顯示的解決

    今天小編就為大家分享一篇Vue中img的src是動態(tài)渲染時不顯示的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11

最新評論

安顺市| 南宁市| 从江县| 景谷| 祁连县| 平湖市| 固安县| 土默特右旗| 济南市| 沭阳县| 南溪县| 石棉县| 区。| 瑞安市| 阳山县| 丹寨县| 泰宁县| 沾化县| 遂宁市| 敖汉旗| 湖南省| 深水埗区| 屏东市| 嘉兴市| 浦北县| 张家川| 渑池县| 克东县| 鄂温| 杭锦旗| 革吉县| 利辛县| 莲花县| 绥化市| 龙州县| 镇沅| 清水县| 宣威市| 河源市| 岢岚县| 克什克腾旗|