Apabila menggunakan UniApp untuk membangunkan aplikasi mudah alih, kami sering menghadapi keperluan untuk menambah TabBar bahagian bawah pada halaman. Walau bagaimanapun, kadangkala kami mendapati bahawa TabBar di bahagian bawah tidak dipaparkan apabila menggunakan UniApp untuk membangunkan halaman. Ini kerana dalam UniApp, halaman tersebut tidak mengandungi TabBar secara lalai dan kami perlu menambahkannya secara manual.
Jadi, bagaimana untuk menambah TabBar ke halaman UniApp? Di bawah ini kami akan memperkenalkannya langkah demi langkah.
Pertama, kita perlu menambah komponen TabBar dalam fail App.vue. Buka fail App.vue, cari kod di bawah teg templat dan tambah teg TabBar berikut:
<tabbar> <tabbar-item icon="home" title="首页" path="/pages/index/index"></tabbar-item> <tabbar-item icon="search" title="搜索" path="/pages/search/search"></tabbar-item> <tabbar-item icon="cart" title="购物车" path="/pages/cart/cart"></tabbar-item> <tabbar-item icon="user" title="我的" path="/pages/user/user"></tabbar-item> </tabbar>
Dalam kod di atas, kami telah menambah 4 menu TabBar, iaitu "Home", "Search ", dan " "Keranjang Belanja" dan "Saya", dan nyatakan laluan halaman yang sepadan. Antaranya, setiap menu TabBar diwakili oleh teg item tabbar, yang mengandungi tiga atribut: ikon, tajuk dan laluan, yang masing-masing mewakili ikon, tajuk dan laluan halaman menu yang sepadan.
Seterusnya, kita perlu menambah laluan halaman pada setiap halaman. Buka halaman yang anda mahu tambah TabBar, seperti index.vue pada halaman utama, cari blok kod lalai eksport di bawah teg skrip dan tambah kod berikut:
export default { onShow() { uni.setTabBarItem({ index: 0, text: '首页', iconPath: '/static/tabBar/home.png', selectedIconPath: '/static/tabBar/home-active.png' }) } }
Dalam kod di atas, kami menggunakan fungsi kitaran hayat onShow untuk menetapkan menu TabBar halaman semasa. Antaranya, fungsi setTabBarItem digunakan untuk menetapkan sifat menu tertentu TabBar, termasuk empat sifat indeks, teks, iconPath dan SelectIconPath. Di sini kami menetapkan sifat menu "Rumah", termasuk indeks menu, tajuk, ikon dalam keadaan biasa dan ikon dalam keadaan yang dipilih.
Akhir sekali, kita perlu menentukan laluan setiap halaman dalam fail konfigurasi pages.json. Buka fail konfigurasi pages.json dan tambahkan kod berikut:
{ "pages": [ { "path": "pages/index/index", "style": {} }, { "path": "pages/search/search", "style": {} }, { "path": "pages/cart/cart", "style": {} }, { "path": "pages/user/user", "style": {} } ], "tabBar": { "list": [ { "pagePath": "pages/index/index", "text": "首页", "iconPath": "/static/tabBar/home.png", "selectedIconPath": "/static/tabBar/home-active.png" }, { "pagePath": "pages/search/search", "text": "搜索", "iconPath": "/static/tabBar/search.png", "selectedIconPath": "/static/tabBar/search-active.png" }, { "pagePath": "pages/cart/cart", "text": "购物车", "iconPath": "/static/tabBar/cart.png", "selectedIconPath": "/static/tabBar/cart-active.png", "badge": 0 }, { "pagePath": "pages/user/user", "text": "我的", "iconPath": "/static/tabBar/user.png", "selectedIconPath": "/static/tabBar/user-active.png" } ] } }
Dalam kod di atas, kami mentakrifkan laluan empat halaman dan mentakrifkan sifat menu TabBar dalam atribut tabBar, termasuk halaman laluan, menu Teks, ikon menu dalam keadaan biasa dan ikon menu dalam keadaan yang dipilih.
Pada ketika ini, langkah-langkah untuk menambah menu TabBar telah selesai. Kami boleh menyusun semula aplikasi UniApp untuk melihat kesannya. Jika semuanya berjalan lancar, anda boleh melihat menu TabBar dipaparkan di bahagian bawah halaman.
Secara umum, UniApp tidak menyertakan menu TabBar secara lalai dan kami perlu menambahkannya secara manual. Dengan menambahkan komponen TabBar pada fail App.vue, menambahkan laluan halaman pada setiap halaman dan mentakrifkan sifat menu TabBar dalam fail konfigurasi pages.json, anda boleh melaksanakan fungsi menu TabBar dengan mudah.
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika tiada bar tab pada halaman uniapp?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!