欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue封裝TabBar組件的完整步驟記錄

 更新時(shí)間:2021年10月30日 16:16:35   作者:cdgogo  
組件封裝是為了復(fù)用,換成大白話就是,同樣的事情我不想做第二遍,節(jié)省出來(lái)的時(shí)間用來(lái)看動(dòng)漫不香嗎,下面這篇文章主要給大家介紹了關(guān)于vue封裝TabBar組件的完整步驟,需要的朋友可以參考下

實(shí)現(xiàn)思路:

步驟一:TabBar和TabBarItem的組件封裝

做到這,可以發(fā)現(xiàn)頁(yè)面的基本布局已經(jīng)實(shí)現(xiàn)了,但是item的點(diǎn)擊活躍狀態(tài)還沒實(shí)現(xiàn)

步驟二:給TabBarItem傳入active圖片

為了防止替換的內(nèi)容直接整個(gè)替換掉插槽,從而插槽上定義的樣式等也被替換影響,最好在插槽外定義一個(gè)div包裹

步驟三:TabBarItem和路由的結(jié)合效果

步驟四:TabBarItem的顏色控制

基本完成,但是發(fā)現(xiàn)路由中點(diǎn)擊路徑重復(fù)會(huì)報(bào)錯(cuò)

報(bào)錯(cuò)原因:

是因?yàn)?vue-router ≥3.0 的版本回調(diào)格式改為promise,若沒有捕獲到錯(cuò)誤,控制臺(tái)會(huì)出現(xiàn)此類報(bào)錯(cuò)警告。

解決方法1:vue-router降級(jí)到3.0的版本

npm i vue-router@3.0 -S 

解決方法二:

對(duì)Router原型鏈上的push、replace方法進(jìn)行重寫,這樣就不用每次調(diào)用方法都要加上catch。

在main.js里面寫入下面內(nèi)容:

import Router from 'vue-router'
 
const originalPush = Router.prototype.push
Router.prototype.push = function push(location, onResolve, onReject) {
  if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)
  return originalPush.call(this, location).catch(err => err)
}

如果修改了push還是沒有生效,那么可以嘗試replace方法,例如:

const originalReplace = Router.prototype.replace;
Router.prototype.replace = function replace(location) {
  return originalReplace.call(this, location).catch(err => err);
};

用字體圖標(biāo)實(shí)現(xiàn)

引入字體圖標(biāo)

運(yùn)用

總結(jié)

到此這篇關(guān)于vue封裝TabBar組件的文章就介紹到這了,更多相關(guān)vue封裝TabBar組件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vuejs第十一篇組件之slot內(nèi)容分發(fā)實(shí)例詳解

    Vuejs第十一篇組件之slot內(nèi)容分發(fā)實(shí)例詳解

    這篇文章主要介紹了Vuejs第十一篇之slot內(nèi)容分發(fā)組件詳解的相關(guān)資料
    2016-09-09
  • moment轉(zhuǎn)化時(shí)間戳出現(xiàn)Invalid Date的問題及解決

    moment轉(zhuǎn)化時(shí)間戳出現(xiàn)Invalid Date的問題及解決

    這篇文章主要介紹了moment轉(zhuǎn)化時(shí)間戳出現(xiàn)Invalid Date的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Vue.js組件通信之自定義事件詳解

    Vue.js組件通信之自定義事件詳解

    這篇文章主要為大家詳細(xì)介紹了Vue.js組件通信之自定義事件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 還在用vuex?來(lái)了解一下pinia

    還在用vuex?來(lái)了解一下pinia

    這篇文章主要為大家詳細(xì)介紹了pinia,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-02-02
  • 一文帶你了解vite對(duì)瀏覽器的請(qǐng)求做了什么

    一文帶你了解vite對(duì)瀏覽器的請(qǐng)求做了什么

    Vite是一種新型前端構(gòu)建工具,能夠顯著提升前端開發(fā)體驗(yàn),下面這篇文章主要給大家介紹了關(guān)于vite對(duì)瀏覽器的請(qǐng)求做了什么的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-12-12
  • Vue.js遞歸組件實(shí)現(xiàn)組織架構(gòu)樹和選人功能案例分析

    Vue.js遞歸組件實(shí)現(xiàn)組織架構(gòu)樹和選人功能案例分析

    這篇文章主要介紹了Vue.js遞歸組件實(shí)現(xiàn)組織架構(gòu)樹和選人功能,本文通過(guò)案例代碼講解的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • vue-router4動(dòng)態(tài)路由刷新404/白屏的解決

    vue-router4動(dòng)態(tài)路由刷新404/白屏的解決

    本文主要介紹了vue-router4動(dòng)態(tài)路由刷新404/白屏的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Vue計(jì)算屬性與監(jiān)視屬性詳細(xì)分析使用

    Vue計(jì)算屬性與監(jiān)視屬性詳細(xì)分析使用

    computed是vue的配置選項(xiàng),它的值是一個(gè)對(duì)象,其中可定義多個(gè)計(jì)算屬性,每個(gè)計(jì)算屬性就是一個(gè)函數(shù),下面這篇文章主要給大家介紹了關(guān)于vue中計(jì)算屬性computed的詳細(xì)講解,需要的朋友可以參考下
    2022-11-11
  • vue.js動(dòng)態(tài)修改background-image問題

    vue.js動(dòng)態(tài)修改background-image問題

    這篇文章主要介紹了vue.js動(dòng)態(tài)修改background-image問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue的axios請(qǐng)求改變content-type為form-data問題

    vue的axios請(qǐng)求改變content-type為form-data問題

    這篇文章主要介紹了vue的axios請(qǐng)求改變content-type為form-data問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09

最新評(píng)論