vue 导航切换

VUE导航切换 vue-router

  • 实现导航点选,不同路由界面展示
  • 选中导航高亮提示
  • hover提示

第一步:路由设置

位置:router > index.js

import Vue from 'vue'
import Router from 'vue-router'


const home= r => require.ensure([], () => r(require('../components/home')), 'home')
const study = r => require.ensure([], () => r(require('../components/study')), 'study')
const shop = r => require.ensure([], () => r(require('../components/shop')), 'shop')

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      redirect: '/home'
    },
    {
      path: '/home',
      name: 'home',
      component: home
    },
    {
      path: '/study',
      name: 'study',
      component: study
    },
    {
      path: '/shop',
      name: 'shop',
      component: shop
    }
})

第二步:main.js 引入路由

位置:main.js

import Vue from 'vue'
import App from './App'
import router from './router'     //引用

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,                         //传入
  render: h => h(App)
})

第三步:内容页使用

1. 主页面

位置:主内容页.vue
<template>
  <div>
      <nav-choose></nav-choose>
  </div>
</template>

<script>
  import NavChoosefrom '../navChoose'

  export default {
    name: 'showbody',
    components: {
      NavChoose
    },
    data() {
      return {}
    }
  }
</script>


<style scoped>

</style>

2.navChoose 导航部分
页面:navChoose.vue

<template>
    <div class="fr header-center-right">

        <router-link tag="div" class="tab-item tab1" to="/home">

            <span class="tab-link">首页</span>

        </router-link>

        <router-link tag="div" class="tab-item" to="/study">

            <span class="tab-link">学习</span>

        </router-link>

        <router-link tag="div" class="tab-item" to="/shop">

            <span class="tab-link">商城</span>

        </router-link>

    </div>
</template>

<script>

export default {

  name: "navChoose",

  data() {
      return{}
  }
};
</script>

<style lang="stylus" scoped>
.header-center-right .tab-item 
    float: left
    font-size: 24px
    margin: 0 50px
    cursor: pointer

.header-center-right 
    margin: 0 40px 0 0

//当前页面对应导航 点选状态
&.router-link-active 
    .tab-link 
        display: block
        background: url('../../images/showline.png') center 77px no-repeat
        color: #F04a4a
//hover提示
.tab-item:hover 
    background: url('../../images/showline.png') center bottom no-repeat
    color: #F04a4a

</style>

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
关于Vue· 美籍华人尤雨溪所作,文档健全,生态完整,与脸谱的React各领前端半边天下;· 相对于React,Vue相对于初学者更容易上手;· 目前统治C端市场的跨平台框架uni-app也是基于Vue的基础技术栈进行开发;· Vue与React在框架设计上有极高的相似度,上手Vue以后,我们可以轻松过渡到React学习;课程特色· 零基础教学,由浅入深,轻松诙谐,物超所值;· 基于官方文档教学,在学习Vue的同时学习阅读文档的方式,授人以鱼更授人以渔;· 课程包含Vuex和Vue-Router最新版内容,即所谓【Vue全家桶开发】;· 完整包含Vue3全部内容;· 含京东商城完整项目从零到一开发过程;· 含最新版@vue/cli的开发和生产环境打包流程;· 含Vite两套脚手架的开发和生产环境打包流程;· 含项目部署上线全流程;· 含自定义组件库高阶课程,带你从零到一完成电梯组件开发与发布;· 附Vue高频面试题50余道,OFFER轻松斩获;课程收益· 掌握Vue2+Vue3的框架基础知识;· 掌握Vue全家桶项目开发+打包+上线全流程;· 掌握自定义组件库技巧;· 掌握Vue高频面试题回答技巧;课程关键词Vue2 Vue3 Vuex Vue-RouterVue项目 Vue全家桶@vue/cli Vite 项目打包 项目上线 自定义组件库 Vue面试题写在最后就连太阳光照到地球都需要8分钟,所以,你也需要时间,耐心一点,持续修炼。 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值