1,npm install vuex --save

2,在src下新建vuex文件夹,新建store.js文件;

store.js

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex) const state = {
count: 0,
adminleftnavnum:"/" //管理后台左侧导航
}
const mutations = {
increment (state) {
state.count++
}
}
// const actions = {...}
//注册Store
export default new Vuex.Store({
state,
mutations
});

3,在main.js下,创建和挂载根实例

new Vue({
el: '#app',
router,
store,
template: '<App/>',
components: { App }
})

4,在components--common--side_nav.vue下(导航所在的组件)

<el-menu :default-active="navselected" :active="navselected" @select="selectItems" class="el-menu-admin" router>

添加变量和改变方法

    export default {
components:{
'el-menu':Menu,
'el-submenu':Submenu,
'el-menu-item':MenuItem,
'el-menu-item-group':MenuItemGroup
},
data () {
return {
navselected:"/",
openends:['1','2','3','4','5','6']//默认menu展开
}
},
mounted(){
console.log(this.navselected)
},
methods:{
getNavType(){
this.navselected=this.$store.state.adminleftnavnum;
//store.state.adminleftnavnum里值变化的时候,设置navselected
},
selectItems(index){
console.log(index)
this.$store.state.adminleftnavnum=index;
//按钮选中之后设置当前的index为store里的值。
}
},
watch: {
// 监测store.state
'$store.state.adminleftnavnum': 'getNavType'
}
}

5,在其他组件改变(src--components--page--home--home.vue)

this.$store.state.adminleftnavnum的值即可

export default {
created () {
this.$store.state.adminleftnavnum="2-2"; //设置左侧导航2-2 active
}
}

预览地址:https://besswang.github.io/element-admin/dist/index.html#/

参考地址:http://yaohuitao.com/?p=341

vue Element动态设置el-menu导航当前选中项的更多相关文章

  1. Vue.之. 动态设置按钮Disabled

    Vue.之. 动态设置按钮Disabled 按钮代码如下: 添加了一个 属性      :disabled="isAble"  ,控制:更新按钮.重置按钮 <el-form- ...

  2. vue + element 动态渲染、移除表单并添加验证

    博客地址:https://ainyi.com/66 又接到新需求了吧~~ 背景 在一个大表单里,有可能会出现这种需求,用户可以自己操作动态添加.移除表单,更加个性化的效果. 常见于填写个人信息.附加内 ...

  3. vue+element 动态表单验证

    公司最近的项目有个添加动态表单的需求,总结一下我在表单验证上遇到的一些坑. 如图是功能的需求,这个功能挺好实现的,但是表单验证真是耗费了我一些功夫. vue+element在表单验证上有一些限制,必须 ...

  4. Vue系列——动态设置img标签的src属性

    声明 本文转自:vue动态设置img的src路径 正文 相信开发的小伙伴已经遇到这个问题了,动态切换img标签的src时,写的路径就是不生效,原因是vue并没有把你的路径字符串当做路径来处理,而是直接 ...

  5. vue中动态设置echarts画布大小

    document.getElementById('news-shopPagechart').style.height = this.heightpx2+'px'; //heightpx2定义在data ...

  6. 【zTree】zTree根据后台数据生成树并动态设置前面的节点复选框的选中状态

    0.页面中准备树的ul <ul id="treeDemo10" class="ztree" style="display: none;" ...

  7. 使用val()方法设置表单中的默认选中项

    有时候我们展示给用户的表单中的checkbox,radio,selec等标签的一些项是默认选中的.比方:当用户改动文章的时候,假设相应的栏目为下拉框的话,那么它的默认选中值应该是原来的栏目位置. 能够 ...

  8. vue+ element 动态换肤

    转至 https://www.cnblogs.com/dengqichang/p/10364455.html 一.搭建好项目的环境. 二.根据ElementUI官网的自定义主题(http://elem ...

  9. vue keepalive 动态设置缓存

    场景:A首页.B列表页.C详情页B---->C 缓存‘列表1’详情的数据A---->C 读取‘列表1’详情的数据B---->C (希望清除‘列表1’的缓存,变成缓存‘列表2’详情的数 ...

随机推荐

  1. TensoFlow的tf.reshape()

    tf.reshape(tensor,shape,name=None) 函数的作用是将tensor变换为参数shape形式,其中的shape为一个列表形式,特殊的是列表可以实现逆序的遍历,即list(- ...

  2. Hbuilder MUI里面使用java.net.URL发送网络请求,操作cookie

    1. 引入所需网络请求类: var URL = plus.android.importClass("java.net.URL"); var URLConnection = plus ...

  3. 利用neon技术对矩阵旋转进行加速(2)

    上次介绍的是顺时针旋转90度,最近用到了180度和270度,在这里记录一下. 1.利用neon技术将矩阵顺时针旋转180度: 顺时针旋转180度比顺时针旋转90度容易很多,如下图 A1 A2 A3 A ...

  4. Innodb表空间

    Innodb有两种管理表空间的方法 独立表空间:每一张表都会生成独立的文件来进行存储,每一张表都有一个.frm表描述文件,和一个.ibd文件.其中ibd文件包括了单独一个表的数据内容和索引内容. 共享 ...

  5. BarTender复合条形码中的分隔符模式详解

    在BarTender 10.1中,支持使用BarTender分隔符模式的复合条形码符号体系包括GS1 Composite和GS1 DataBar (RSS).本文小编给大家详细讲解BarTender分 ...

  6. WebGL入门

    1.清空绘图区 清空绘图区是使用指定的背景颜色填充canvas,使用gl.clearColor设置背景色.gl.clearColor(red, green, blue, alpha).openGL的颜 ...

  7. js跟随的广告

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. chrome插件开发之调试

    https://blog.csdn.net/qustdong/article/details/46046553

  9. JavaScript 词法、静态、动态作用域初级理解

    开始之前 由于本人也是JavaScript初学者,记录学习经过,怕以后会忘记. 对于JavaScript 初学者来说,最难的不是代码部分,而是对很多书籍中的术语的理解,大多时候想要理解一段JavaSc ...

  10. js节流函数高级版

    节流函数其主要作用就是防止用户在短时间内多次触发该事件. <!DOCTYPE html> <html lang="en"> <head> < ...