vue使用vuex实现首页导航切换不同路由的方法


Posted in Javascript onMay 08, 2019

vue实现首页导航切换不同路由的方式(二)【使用vuex实现的】,具体代码如下所示:

<nav>
    <!-- 导航栏 -->
   <div class="indexNavOut">
    <div class="indexNav">
    <ul class="navLi">
     <li @click="checkNav()" style="width: 130px;"><router-link to="/home">了解海华教育(视频)</router-link><!--<a href="#">了解海华教育(视频)</a>--></li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/home','active2':Index=='#/'}">
      <router-link to="/home">首页</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/synopsis'}"><router-link to="/synopsis">学校简介</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/major'}"><router-link to="/major">专业介绍</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/campus'}"><router-link to="/campus">校园风采</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/news'}"><router-link to="/news">新闻资讯</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/enrollment'}"><router-link to="/enrollment">招生信息</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/employment'}"><router-link to="/employment">就业中心</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/enlist'}"><router-link to="/enlist">在线报名</router-link>
     </li>
     <li @click="checkNav()" v-bind:class="{'active':Index=='#/contact'}"><router-link to="/contact">联系我们</router-link>
     </li>
    </ul>
    </div>
   </div>
   </nav>

css:

/* 导航栏 */
.indexNavOut{
 background-color: #486B8A;
 height: 60px;
}
.indexNav{
 width: 80%;
 margin: 0 auto;
}
.navLi{
 display: flex;
}
.navLi li:nth-child(1){
 flex: 1.8;
}
.navLi li{
 flex: 1;
}
.navLi li a{
 text-decoration: none;
 color: #fff;
 font-size: 16px;
 padding-bottom: 17px;
}
.indexNav .icon{
 width: 230px;
 margin-top: 10px;
}
.indexNav .icon img{
 width: 100%;
}
.navLi li {
 height: 60px;
 line-height: 60px;
 position: relative;
}
.navLi li.active a{
 border-bottom: 3px solid #E96463;
}
.navLi li.active2 a{
 border-bottom: 3px solid #E96463;
}
.navLi li:last-child:after{
 border-right: none;
}
.navLi li .line{
 width: 20px;
 height: 3px;
 background: #E96463;
 border: none;
 position: absolute;
 /*top: -14px;*/
 /*right: -32px;*/
 left: 50px;
 top: 45px; 
 z-index: 100;
}

js:

vue使用vuex实现首页导航切换不同路由的方法

 main.js代码:

vue使用vuex实现首页导航切换不同路由的方法

vue使用vuex实现首页导航切换不同路由的方法

vue使用vuex实现首页导航切换不同路由的方法

import Vuex from 'vuex'
Vue.use(Vuex);
const store = new Vuex.Store({
 state: {
 majorDetail: false,
 Index: document.location.hash,//导航条跳转路由样式控制
 },
 mutations: {
 //控制专业介绍详情显示隐藏
 updatemajorDetail(state, majorDetail) {
  state.majorDetail = majorDetail;
 },
 updateIndex(state, Index) {
  state.Index = Index;
 }
 }
});

vue使用vuex实现首页导航切换不同路由的方法

效果图:

vue使用vuex实现首页导航切换不同路由的方法

vue使用vuex实现首页导航切换不同路由的方法

现在在这个页面里点击了解更多的时候跳转到新闻资讯页面,然后然后state里的值,然后改变当前的url以及导航选中新闻资讯。

vue使用vuex实现首页导航切换不同路由的方法

vue使用vuex实现首页导航切换不同路由的方法

总结

以上所述是小编给大家介绍的vue使用vuex实现首页导航切换不同路由的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
Javascript操纵Cookie实现购物车程序
Feb 15 Javascript
js prototype 格式化数字 By shawl.qiu
Apr 02 Javascript
Prototype使用指南之selector.js说明
Oct 26 Javascript
javascript call方法使用说明
Jan 11 Javascript
bootstrap布局中input输入框右侧图标点击功能
May 16 Javascript
浅析JavaScript动画模拟拖拽原理
Dec 09 Javascript
谈谈第三方App接入微信登录 解读
Dec 27 Javascript
原生JS实现层叠轮播图
May 17 Javascript
Vue数组更新及过滤排序功能
Aug 10 Javascript
vue.js中created方法作用
Mar 30 Javascript
jsonp跨域获取百度联想词的方法分析
May 13 Javascript
javascript实现blob加密视频源地址的方法
Aug 08 Javascript
微信小程序封装自定义弹窗的实现代码
May 08 #Javascript
Vue.js轮播图走马灯代码实例(全)
May 08 #Javascript
深入浅析vue-cli@3.0 使用及配置说明
May 08 #Javascript
js实现继承的方法及优缺点总结
May 08 #Javascript
微信小程序人脸识别功能代码实例
May 07 #Javascript
iphone刘海屏页面适配方法
May 07 #Javascript
常见的浏览器存储方式(cookie、localStorage、sessionStorage)
May 07 #Javascript
You might like
用PHP程序实现支持页面后退的两种方法
2008/06/30 PHP
Laravel框架路由配置总结、设置技巧大全
2014/09/03 PHP
php使用scandir()函数扫描指定目录下所有文件示例
2019/06/08 PHP
TNC vs BOOM BO3 第二场2.13
2021/03/10 DOTA
取选中的radio的值
2010/01/11 Javascript
JavaScript中对象介绍
2014/12/31 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
swtich/if...else的替代语句
2015/08/16 Javascript
详解Javascript模板引擎mustache.js
2016/01/20 Javascript
jQuery取消特定的click事件
2016/02/29 Javascript
基于JavaScript实现智能右键菜单
2016/03/02 Javascript
Node.js的项目构建工具Grunt的安装与配置教程
2016/05/12 Javascript
NodeJS连接MongoDB数据库时报错的快速解决方法
2016/05/13 NodeJs
javascript jquery对form元素的常见操作详解
2016/06/12 Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
2016/09/23 Javascript
快速解决js中window.location.href不工作的问题
2016/11/02 Javascript
防止重复发送 Ajax 请求
2017/02/15 Javascript
js实现华丽的九九乘法表效果
2017/03/29 Javascript
layui点击按钮添加可编辑的一行方法
2018/08/15 Javascript
vscode下vue项目中eslint的使用方法
2019/01/13 Javascript
Python实现矩阵相乘的三种方法小结
2018/07/26 Python
Python wxPython库消息对话框MessageDialog用法示例
2018/09/03 Python
Django 中自定义 Admin 样式与功能的实现方法
2019/07/04 Python
Python如何读写字节数据
2020/08/05 Python
matplotlib之属性组合包(cycler)的使用
2021/02/24 Python
TALLY WEiJL法国网上商店:服装、时装及配饰
2019/08/31 全球购物
现代化办公人员工作的自我评价
2013/10/16 职场文书
教师研修随笔感言
2014/01/23 职场文书
2014年两会学习心得体会
2014/03/17 职场文书
2014年民主评议党员个人总结
2014/09/24 职场文书
特此通知格式
2015/04/27 职场文书
刑事起诉书范文
2015/05/19 职场文书
张丽莉观后感
2015/06/16 职场文书
2016年圣诞节寄语(一句话)
2015/12/07 职场文书
使用CSS3实现按钮悬停闪烁动态特效代码
2021/08/30 HTML / CSS
Redis中key的过期删除策略和内存淘汰机制
2022/04/12 Redis