uni-app中自定義動(dòng)態(tài)底部tabbar(附示例源碼)

UNIAPP 自帶的原生導(dǎo)航盡管流暢度非常好,但是在具體項(xiàng)目中有的時(shí)候需要?jiǎng)討B(tài)設(shè)置以及特殊樣式的 底部菜單 這個(gè)時(shí)候就需要自己去寫一個(gè)自定義的底部tabbar

項(xiàng)目地址 fr_uni_app

1、比如需要特殊的圖標(biāo) 多出來一部分的


多出一部分的圖標(biāo)

2、根據(jù)登陸帳號(hào)的身份加載不同的tabbar


根據(jù)登陸帳號(hào)的身份加載不同的tabbar
動(dòng)圖預(yù)覽
預(yù)覽
解決方案
  • 將整個(gè)首屏4個(gè)頁面作為組件加載進(jìn)來 如 入口 index.vue
  • 將 自定義tabbar 寫到 index.vue 中 或?qū)⑵浞庋b為組件 加載進(jìn)來
  • 使用vuex 統(tǒng)一管理數(shù)據(jù)
  • 使用小程序自定義組件去解析HTML代碼 (UNI的wxParse 看著麻煩 直接擼小程序自定義組件)
引入組件(頁面)
引入組件(頁面)

渲染首頁數(shù)據(jù)
底部tabbar的切換及數(shù)據(jù)來源

只要控制 store中的 底部菜單數(shù)據(jù) 即可。頁面中動(dòng)態(tài)渲染

export default {
    state:{
        footer_nav:[
            {
                name:'首頁',
                name_code:'home',
                icon:'/static/footer_icon/a2.png',
                select_icon:'/static/footer_icon/a1.png'
            },
            {
                name:'發(fā)布',
                name_code:'publish',
                icon:'/static/footer_icon/f2.png',
                select_icon:'/static/footer_icon/f1.png'
            },
            {
                name:'我的',
                name_code:'my',
                icon:'/static/footer_icon/d1.png',
                select_icon:'/static/footer_icon/d2.png'
            },
            
        ],
        now_page_index:0,
    },
    mutations:{
        change_page(state,index){
            state.now_page_index = index;
        }
    }
}

添加了自己常用的 request請(qǐng)求模塊

//請(qǐng)求示例
            this.$ajax
                .get({
                    url: '/admin/get_product_list',
                    data: {
                        a: 1
                    }
                })
                .then(res => {
                    this.$alert('狀態(tài)碼:' + res.code);
                    console.log(res);
                });

添加了自己封裝的 上傳圖片的 模塊

//上傳示例
            async choose_img_upload(n) {
                this.data_null()
                let uploader = new this.$Uploader();
                let path_arr = await uploader.choose_and_upload(n);
                console.log(path_arr);
                this.img_urls = path_arr;
                console.log(this.img_urls)
            },
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,781評(píng)論 25 709
  • 一輪彎月,靜靜懸掛。 頭發(fā)松松的盤在腦后,幾縷散發(fā)輕撫臉頰,一輪明月淡淡的披上羋月的白白的披肩上。 空闊寂靜的承明...
    莜麥花開閱讀 332評(píng)論 6 2
  • 一,讓偷走你時(shí)間的人滾蛋 二,不要把目標(biāo)告訴別人 我自己就試過,在別人面前信誓旦旦地說出自己計(jì)劃,然后幻想自己完成...
    幻想家Melon閱讀 223評(píng)論 2 1
  • 武漢哈哈第一次在武漢看下這么大的雪不容易呢,回想可能今年大有不同呢,某人某事都有原因既然留下就算從來也是半年的改變...
    魔瞳lol閱讀 244評(píng)論 0 0
  • 微風(fēng)細(xì)揚(yáng),滌蕩心中不滅的光。 群峰險(xiǎn)峻,猶如歲月起伏無常。 游樂萬峰,釋放云般書卷壓膛。 預(yù)??圃?,必將破兵斬將驚磅。
    菱角翰林閱讀 215評(píng)論 0 0

友情鏈接更多精彩內(nèi)容