色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

詳談vue中router-link和傳統(tǒng)a鏈接的區(qū)別

瀏覽:29日期:2022-12-30 14:38:07

Vue-router是伴隨著Vue框架出現(xiàn)的路由系統(tǒng),它也是公認的一種優(yōu)秀的路由解決方案。在使用Vue-router時候,我們常常會使用其自帶的路徑跳轉組件Link,通過實現(xiàn)跳轉,這和傳統(tǒng)的何其相似!但它們到底有什么具體的區(qū)別呢?

官方中給出的解釋是這樣的:

<router-link> 比起寫死的 <a href='http://www.lshqa.cn/bcjs/...' rel='external nofollow' rel='external nofollow' > 會好一些,理由如下:

無論是 HTML5 history 模式還是 hash 模式,它的表現(xiàn)行為一致,所以,當你要切換路由模式,或者在 IE9 降級使用 hash 模式,無須作任何變動。

在 HTML5 history 模式下,router-link 會守衛(wèi)點擊事件,讓瀏覽器不再重新加載頁面。

當你在 HTML5 history 模式下使用 base 選項之后,所有的 to 屬性都不需要寫 (基路徑) 了。

呃呃,只能說博主剛學時第一次并沒有看懂(應該是之前的基礎知識不牢固吧,看來之后得補補啦),于是去自行查閱啦:

<a href='http://www.lshqa.cn/bcjs/...' rel='external nofollow' rel='external nofollow' >

W3C中是這樣解釋a標簽的:

<a> 標簽定義超鏈接,用于從一張頁面鏈接到另一張頁面。

從一張頁面跳轉到另一張頁面,但從這里來說就違背了多視圖的單頁Web應用這個概念

通過a標簽進行跳轉,頁面會被重新渲染,即相當于重新打開一個新的網(wǎng)頁,體現(xiàn)為視覺上的“閃爍”(如果是本地的項目基本看不出來)

router-link

<router-link> 組件支持用戶在具有路由功能的應用中 (點擊) 導航。 通過 to 屬性指定目標地址,默認渲染成帶有正確鏈接的 <a> 標簽,可以通過配置 tag 屬性生成別的標簽.。

通過router-link進行跳轉不會跳轉到新的頁面,也不會重新渲染,它會選擇路由所指的組件進行渲染,避免了重復渲染的“無用功”。

總結:對比<a>,router-link組件避免了不必要的重渲染,它只更新變化的部分從而減少DOM性能消耗

Vue的創(chuàng)新之處在于,它利用虛擬DOM的概念和diff算法實現(xiàn)了對頁面的'按需更新',

Vue-router很好地繼承了這一點,重渲染是我們不希望看到的,因為無論跳轉到哪個頁面,只需要渲染一次就夠了。<Link>組件幫助我們實現(xiàn)了這個愿望

反觀<a>標簽,每次跳轉都得重渲染一次,在一個浩大的項目里,這多么可怕!我們的'渲染'做了許多'無用功',而且消耗了大量彌足珍貴的DOM性能!

補充知識:使用vue中路由router-link中包含a標簽

當vue中使用router-link包含a標簽的時候,a標簽會取代routerlink的值實現(xiàn)跳轉,

<div v-for='(item,index) in listName' @click='toDetail(item.id)'><p>{{item.name}}</p><p>{{item.address}}</p><p>{{item.distance}}米</p><a :href='http://www.lshqa.cn/bcjs/getUrl(item.tel)' rel='external nofollow' rel='external nofollow' >圖標{{item.tel}}</a></div><!--<router-link :to='{path:’detail’,query:{id:item.id}}' tag='div' v-for='(item,index) in listName' @click='toDetail()'><p>{{item.name}}</p><p>{{item.address}}</p><p>{{item.distance}}米</p><a :href='http://www.lshqa.cn/bcjs/getUrl(item.tel)' rel='external nofollow' rel='external nofollow' >圖標{{item.tel}}</a></router-link>-->

下面這個routerlink中a標簽會替代router-link的使用

可以使用div加點擊事件

2 當在vue中實現(xiàn) a href='tel:1325425652' rel='external nofollow' 的時候,直接使用:href='http://www.lshqa.cn/bcjs/tel' rel='external nofollow' +變量的方法不可以,

可以使用函數(shù)封裝

getUrl(tel){return 'tel:'+tel;},

以上這篇詳談vue中router-link和傳統(tǒng)a鏈接的區(qū)別就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標簽: Vue
相關文章:
主站蜘蛛池模板: 精品在线免费视频 | 免费国产成人高清在线观看不卡 | 国内视频自拍 | 一区二区播放 | 黄色毛片子 | 手机在线播放av | a级高清| 神马三级我不卡 | 精品国产综合成人亚洲区 | 91视频最新网站 | 精品xxxxxbbbb欧美中文 | 婷婷国产成人久久精品激情 | 久久夜色精品国产亚洲 | 久久久久久免费一区二区三区 | 日本在线观看免费看片 | 欧美区一区二 | 九九99香蕉在线视频网站 | 久久久久久毛片免费观看 | 日韩在线亚洲 | 久久两性| 中文字幕亚洲一区二区v@在线 | 亚洲欧美日韩在线观看二区 | 日韩特级 | 爽爽爽爽爽爽爽成人免费观看 | 99久久香蕉国产线看观香 | 久久日本精品一区二区免费 | 久爱www免费人成福利播放 | 精品视频网| 一区二区三区免费看 | 成人毛片在线视频 | 好湿好紧好痛a级是免费视频 | 亚洲欧美视频一区二区 | 亚洲精品一二区 | 国产精品久久久久久久福利院 | 97超级碰碰碰免费公开在线观看 | 欧美另类高清xxxxx | 欧美一级乱理片免费观看 | 精品国产一区二区三区在线 | 理论片亚洲 | 欧美国产精品 | 男女无遮挡拍拍拍免费1000 |