如何使用Vue实现点击导航高亮效果
发布时间:2023-09-05 11:30:46 所属栏目:教程 来源:网络
导读: 本篇内容介绍了“如何用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> 三、效果展示 完成以上步骤后,我们就可以通过点击导航来进行路由跳转,同时也会实现点击导航高亮的效果。 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐