文章目录
1. 自定义tabbar效果 2. pages新建tabbar页面 3. tabbar 页面结构 4. tabbar 页面完整代码
1. 自定义tabbar效果
2. pages新建tabbar页面
首先在 pages.json
文件中,新建一个 tabbar
页面
"pages" : [
{
"path" : "pages/index/tabbar" ,
"style" : {
"navigationBarTitleText" : "tabbar页面" ,
"navigationStyle" : "custom"
}
} ,
... . .
] ,
3. tabbar 页面结构
此页面主要是写 tabbar的html样式和布局,引用主页面代码,通过 v-if
控制进行展示 index
,search
,maim
,news
,me
一级页面
4. tabbar 页面完整代码
css 样式文件太多了就不贴出来了
< template>
< view>
< index v-if = " PageCur=='index'" > </ index>
< search v-if = " PageCur=='search'" > </ search>
< news v-if = " PageCur=='news'" > </ news>
< me v-if = " PageCur=='me'" > </ me>
< view class = " box" >
< view class = " cu-bar tabbar bg-white shadow foot" >
< view class = " action" @click = " NavChange" data-cur = " index" >
< view class = ' cuIcon-cu-image' >
< image v-if = " PageCur=='index'" src = " ../../static/tabBar/index_cur.png" > </ image>
< image v-if = " PageCur != 'index'" src = " ../../static/tabBar/index.png" > </ image>
</ view>
< view :class = " PageCur=='index'?'color_main':'text-gray'" > 首页</ view>
</ view>
< view class = " action" @click = " NavChange" data-cur = " search" >
< view class = ' cuIcon-cu-image' >
< view class = " cu-tag badge" > </ view>
< image v-if = " PageCur=='search'" src = " ../../static/tabBar/shop_cur.png" > </ image>
< image v-if = " PageCur != 'search'" src = " ../../static/tabBar/shop.png" > </ image>
</ view>
< view :class = " PageCur=='search'?'color_main':'text-gray'" > 会员专区</ view>
</ view>
< view @click = " NavChange" class = " action text-gray add-action" data-cur = " main" >
< image class = " logo_btn" mode = " widthFix" src = " ../../static/logo.png" > </ image>
< view :class = " PageCur=='main'?'color_main':'text-gray'" > 组件模板</ view>
</ view>
< view class = " action" @click = " NavChange" data-cur = " news" >
< view class = ' cuIcon-cu-image' >
< view class = " cu-tag badge" > {{message}}</ view>
< image v-if = " PageCur=='news'" src = " ../../static/tabBar/order_cur.png" > </ image>
< image v-if = " PageCur != 'news'" src = " ../../static/tabBar/order.png" > </ image>
</ view>
< view :class = " PageCur=='news'?'color_main':'text-gray'" > 文章资讯</ view>
</ view>
< view class = " action" @click = " NavChange" data-cur = " me" >
< view class = ' cuIcon-cu-image' >
< image v-if = " PageCur=='me'" src = " ../../static/tabBar/me_cur.png" > </ image>
< image v-if = " PageCur != 'me'" src = " ../../static/tabBar/me.png" > </ image>
</ view>
< view :class = " PageCur=='me'?'color_main':'text-gray'" > 个人中心</ view>
</ view>
</ view>
</ view>
</ view>
</ template>
< script>
import index from "./index.vue" ;
import search from "./search.vue" ;
import main from "./main.vue" ;
import news from "./news.vue" ;
import me from "./me.vue" ;
export default {
components : {
index,
search,
main,
news,
me
} ,
data ( ) {
return {
PageCur : 'index' ,
message : '99+' ,
duration : 1
} ;
} ,
methods : {
NavChange : function ( e ) {
this . PageCur = e. currentTarget. dataset. cur;
} ,
}
}
</ script>
< style lang = " scss" >
// 省略
</ style>