如何用Vue实现点击导航高亮效果
本篇内容介绍了“如何用Vue实现点击导航高亮效果”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
一、项目环境准备
在开始前,需要先准备一个使用Vue的项目。可以使用Vue CLI等工具来快速创建一个项目。我们需要在项目中安装Vue和Vue Router两个库。
//安装 Vue
npm install vue
//安装 Vue Router
npm install vue-router
二、实现点击导航高亮
设置路由
首先,需要设置路由来导航。这里我们创建三个路由,分别表示首页、新闻页和博客页。
//导入Vue和Vue Router
import Vue from 'vue'
import Router from 'vue-router'
//导入组件
import Home from '@/components/Home'
import News from '@/components/News'
import Blog from '@/components/Blog'
//使用Vue Router
Vue.use(Router)
export default new Router({
routes: [
{
path: '/',
name: 'Home',
component: Home
},
{
path: '/news',
name: 'News',
component: News
},
{
path: '/blog',
name: 'Blog',
component: Blog
}
]
})
创建导航组件
接下来,创建一个导航组件,在组件中设置需要跳转的路由链接。这里使用<router-link>
标签来实现路由跳转,同时也是后面实现高亮效果的关键。
<template>
<div>
<router-link to="/" tag="span" v-bind:class="{ active: isActive('/')}">首页 </router-link>
<router-link to="/news" tag="span" v-bind:class="{ active: isActive('/news')}">新闻 </router-link>
<router-link to="/blog" tag="span" v-bind:class="{ active: isActive('/blog')}">博客 </router-link>
</div>
</template>
<script>
export default {
methods: {
isActive (path) {
// 判断当前路由是否激活,如果是则添加类名,否则不添加
return this.$route.path === path
}
}
}
</script>
<style>
.active {
color: red;
}
</style>
在组件中定义了一个isActive
方法,该方法会判断当前路由是否激活。如果当前路由是该导航所对应的路由,则添加一个active
类名;否则,不添加类名。
添加导航组件
把导航组件添加到页头部分。这里使用Bootstrap来简单设计页面。
<template>
<div class="container">
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<router-link to="/" class="navbar-brand">Vue Router</router-link>
</div>
<div>
<ul class="nav navbar-nav">
<Nav></Nav>
</ul>
</div>
</div>
</nav>
<router-view></router-view>
</div>
</template>
<script>
import Nav from './Nav'
export default {
name: 'app',
components: {
Nav
}
}
</script>
完整代码如下:
<template>
<div class="container">
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<router-link to="/" class="navbar-brand">Vue Router</router-link>
</div>
<div>
<ul class="nav navbar-nav">
<Nav></Nav>
</ul>
</div>
</div>
</nav>
<router-view></router-view>
</div>
</template>
<script>
import Nav from './Nav'
export default {
name: 'app',
components: {
Nav
}
}
</script>
三、效果展示
完成以上步骤后,我们就可以通过点击导航来进行路由跳转,同时也会实现点击导航高亮的效果。
“如何用Vue实现点击导航高亮效果”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注蜗牛博客网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
评论