vue實(shí)現(xiàn)tab切換的3種方式及切換保持?jǐn)?shù)據(jù)狀態(tài)
vue實(shí)現(xiàn)tab切換的3種方式
一、v-show控制內(nèi)容切換
1.簡單版原理:用點(diǎn)擊事件改變num值作為開關(guān),控制tab樣式和內(nèi)容顯示隱藏。

2.數(shù)據(jù)渲染原理:主要利用v-for綁定的index來控制,跟上面差不多。

二、組件切換。
1。知識點(diǎn)主要是vue中is的特性,和keep-alive緩存

三、路由切換。(對地址欄和數(shù)據(jù)請求友好)
通過router-link實(shí)現(xiàn)。

vue tab切換保持?jǐn)?shù)據(jù)狀態(tài)
頁面做tab切換,由于組件每一次切換都會重新實(shí)例化組件,我們想要頁面不論怎么切換都仍然保持tab里面的內(nèi)容不會刷新,減少頁面重新渲染以及減少請求
實(shí)現(xiàn)方法:使用<keep-alive></keep-alive>包裹組件
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="記錄">
<keep-alive>
<child1 v-if="isChildUpdate"></child1>
</keep-alive>
</el-tab-pane>
</el-tabs>
列表頁面跳轉(zhuǎn)詳情 ,列表頁面保持上一次操作狀態(tài)
通過是否加載router-view 和路由元meta設(shè)置頁面是否需要緩存來實(shí)現(xiàn)


router-view嵌套多層的話,可能要設(shè)置多層,然后通過beforeRouteLeave監(jiān)聽路由離開,設(shè)置是否緩存

//從其他頁面跳轉(zhuǎn)不需要緩存頁面 從詳情頁面回來則需要緩存
總結(jié)
到此這篇關(guān)于vue實(shí)現(xiàn)tab切換的3種方式及切換保持?jǐn)?shù)據(jù)狀態(tài)的文章就介紹到這了,更多相關(guān)vue tab切換方式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue項(xiàng)目打包后放服務(wù)器非根目錄下圖片找不到問題
這篇文章主要介紹了vue項(xiàng)目打包后放服務(wù)器非根目錄下圖片找不到問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
electron+vue實(shí)現(xiàn)div contenteditable截圖功能
這篇文章主要介紹了electron+vue實(shí)現(xiàn)div contenteditable截圖功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2020-01-01
VUEJS實(shí)戰(zhàn)之構(gòu)建基礎(chǔ)并渲染出列表(1)
這篇文章主要為大家詳細(xì)介紹了VUEJS實(shí)戰(zhàn)之構(gòu)建基礎(chǔ)并渲染出列表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-06-06
element-ui中el-upload多文件一次性上傳的實(shí)現(xiàn)
這篇文章主要介紹了element-ui中el-upload多文件一次性上傳的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
vue3.x?的shallowReactive?與?shallowRef?使用場景分析
在Vue3.x中,`shallowReactive`和`shallowRef`是用于創(chuàng)建淺層響應(yīng)式數(shù)據(jù)的API,它們與`reactive`和`ref`類似,本文介紹vue3.x??shallowReactive?與?shallowRef的使用場景,感興趣的朋友一起看看吧2025-02-02

