您现在的位置是:网站首页> 编程资料编程资料
vue中的路由跳转tabBar图片和文字的高亮效果_vue.js_
2023-05-24
260人已围观
简介 vue中的路由跳转tabBar图片和文字的高亮效果_vue.js_
前言
在pc端和移动端的项目里面会遇见导航栏或者tabBar的点击跳转,图片和文字的高亮效果,对于小程序来说可以直接创建和修改图片和文字的高亮效果,也可以使用相应的组件库去自定义一些效果,而在pc端和移动端的来说需要对导航栏或者tabBar进行一定的封装,使其成为全局组件的使用,结合组件间的数据传递可以实现不同页面的不同信息的展示,本篇文章介绍路由跳转的时候,使图片和文字的高亮效果的方法
定义基本的组件
在demo的初期,我们需要在项目的components文件夹下创建封装的tabBar组件,创建文件myTabbar.vue,接下来需要在main.js入口文件引入注册:
// 引入全局组件tabBar import myTabbar from '@/components/myTabbar' Vue.component('myTabbar', myTabbar)接下来需要我们简单书写myTabbar.vue的样式结构:
{{ item.title }}
这里需要注意,图片需要存入public文件夹的images文件夹内部,在路由组件做好相应的路由规则,点击之后就可以跳转了
文字高亮效果
图片的高亮效果可以通过更改路径来实现,文字的高亮效果需要逻辑来实现
首先定义一个active的class样式:
.active { color: red; }修改li:
在配置路由的入口文件的配置路由添加:
// 配置路由 export default new VueRouter({ linkActiveClass: 'active', // linkExactActiveClass: 'active', // 配置路由 routes: [...] })linkActiveClass是模糊匹配linkExactActiveClass是精准匹配
这样两者的搭配就可以实现点击不同区域的图片和文字就会出现高亮的效果
实例效果,这里稍微修改了一点样式:

这种效果在PC端多用于导航栏,在移动端多用于tabBar,如果是移动端我们需要使用rem等系列手法转换单位。
完整代码
myTabbar.vue的代码:
{{ item.title }}
路由入口文件的代码:
// 配置路由 export default new VueRouter({ linkActiveClass: 'active', // linkExactActiveClass: 'active', // 配置路由 routes: [...] })全局引入的代码:
// 引入全局组件tabBar import myTabbar from '@/components/myTabbar' Vue.component('myTabbar', myTabbar)以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关内容
- vue访问未定义的路由时重定向404问题_vue.js_
- big.js 如何解决精度丢失问题源码解析_javascript技巧_
- angular中的observable问题_AngularJS_
- JS踩坑实战之19位数Number型精度丢失问题详析_javascript技巧_
- 解决vue项目路径不正确,自动跳转404的问题_vue.js_
- ResizeObserver 监视 DOM大小变化示例详解_JavaScript_
- element upload 钩子函数的坑及解决_vue.js_
- Performance 内存监控使用技巧详解_JavaScript_
- 详解React获取DOM和获取组件实例的方式_React_
- vue组件间通信全面讲解_vue.js_
