vue移動(dòng)端router-view嵌套實(shí)現(xiàn)底部導(dǎo)航切換

路由使用 vue-router
組件庫使用 vue-ydui
效果圖:


登錄.png
主界面-首頁.png

主界面-辦事大廳.png

項(xiàng)目結(jié)構(gòu)


圖片.png

大體流程


圖片.png

路由代碼

import Vue from 'vue'
import Router from 'vue-router'
import home from '../page/home'
import office from '../page/office'
import mine from '../page/mine'
import mainPage from '../page/mainPage'

import loginPage from '../page/loginPage'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      component: loginPage
    },
    {
      path: '/mainPage',
      redirect: 'home',//子路由默認(rèn)加載第一個(gè)界面
      component: mainPage,
      children: [{//子路由
        path: '/home',
        component: home
      },
        {
          path: '/office',
          component: office
        },
        {
          path: '/mine',
          component: mine
        }
      ]
    },
  ]
})

登錄界面loginPage

<template>
  <div>
    <yd-navbar fontsize="14px" height="50px" bgcolor="#2c83db" color='#FFF' title="登錄"></yd-navbar>
    <yd-cell-group style="margin-top: 50px">
      <yd-cell-item>
        <yd-icon slot="icon" name="phone3" size=".45rem"></yd-icon>
        <yd-input slot="right" required v-model="loginInfo.userNub" max="20" placeholder="請(qǐng)輸入用戶名"></yd-input>
      </yd-cell-item>
      <yd-cell-item>
        <yd-icon slot="icon" name="phone3" size=".45rem"></yd-icon>
        <yd-input slot="right" required v-model="loginInfo.password" max="20" placeholder="請(qǐng)輸入密碼"></yd-input>
      </yd-cell-item>
    </yd-cell-group>
    <yd-button-group>
    <yd-button size="large"  bgcolor="#2c83db" color='#FFF' @click.native="login">登錄</yd-button>
    </yd-button-group>
  </div>
</template>

<script>
    export default {
        name: "login-page",
        data(){
          return{
            loginInfo:{
              userNub:'',
              password:'',
            }
          }
        },
      methods:{
          login(){
            this.$router.push({ path: '/mainPage'});
          }
      }
    }
</script>

<style scoped>

</style>

主界面mainPage

<template>
  <div>
    <router-view/>
    <yd-tabbar  style="position: fixed;bottom: 0">
      <yd-tabbar-item v-for="(tab,index) in tabbar" :title="tab.title" :link="tab.link" :active="tab.active" :key="index">
        <yd-icon :name="tab.icon" slot="icon" size="0.54rem"></yd-icon>
      </yd-tabbar-item>
    </yd-tabbar>
  </div>
</template>
<script>
    export default {
        name: "mainPage",
        data(){
          return{
            tabbar:[{
              title:"首頁",
              link:"/home",
              active:true,
              icon:"home-outline",
            },
              {
                title:"辦事大廳",
                link:"/office",
                active:false,
                icon:"shopcart-outline",
              },
              {
                title:"個(gè)人中心",
                link:"/mine",
                active:false,
                icon:"ucenter",
              }
            ]
          }
        },
      //監(jiān)聽路由變化切換tab
      watch:{
        $route(to,from){
          for(let i=0;i<this.tabbar.length;i++){
            if(this.tabbar[i].link===to.path){
              this.tabbar[i].active=true;
            }else{
              this.tabbar[i].active=false;
            }
          }
        }
      },
    }
</script>

<style scoped>

</style>

office辦事大廳 代碼

<template>
   <div>
     <yd-navbar  title="辦事大廳" fontsize="14px" height=50px bgcolor="#2c83db" color='#FFF'></yd-navbar>
   </div>
</template>

<script>
    export default {
        name: "test-a"
    }
</script>

<style scoped>

</style>

其他略。。。,有問題歡迎討論

?著作權(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),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • 1路由,其實(shí)就是指向的意思,當(dāng)我點(diǎn)擊頁面上的home按鈕時(shí),頁面中就要顯示home的內(nèi)容,如果點(diǎn)擊頁面上的abou...
    你好陌生人丶閱讀 1,795評(píng)論 0 6
  • [轉(zhuǎn)載自](http://www.cnblogs.com/SamWeb/p/6610733.html) 路由,其實(shí)...
    可爸閱讀 1,654評(píng)論 1 0
  • UI組件 element- 餓了么出品的Vue2的web UI工具套件 Vux- 基于Vue和WeUI的組件庫 m...
    柴東啊閱讀 15,965評(píng)論 2 140
  • UI組件 element- 餓了么出品的Vue2的web UI工具套件 Vux- 基于Vue和WeUI的組件庫 m...
    王喂馬_閱讀 6,597評(píng)論 1 77
  • UI組件 element- 餓了么出品的Vue2的web UI工具套件 Vux- 基于Vue和WeUI的組件庫 m...
    你猜_3214閱讀 11,350評(píng)論 0 118

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