this.$store.permission
时间: 2023-10-28 09:36:44 浏览: 65
这段代码是在 Vue.js 中使用 Vuex 状态管理库的情况下访问 store 中的 permission 模块。$store 是 Vue 实例上的属性,用于访问 Vuex 的 store 对象,而 permission 则是在 store 中定义的一个模块,用于管理用户权限相关的状态数据和逻辑。通过 this.$store.permission 可以访问 permission 模块中定义的 state、getters、mutations 和 actions 等属性和方法。
相关问题
setSidebarRouters() { let key = this.$route.path.split('/')[1]; key = '/' + key; this.routes.map((item) => { if (key == item.url && item.child.length > 0) { this.$store.commit('permission/SET_SIDEBAR_ROUTERS', item.child); } else if (key == item.url && !item.child.length) { this.$store.commit('permission/SET_SIDEBAR_ROUTERS', [item]); } }); },
这段代码是一个 Vue.js 中的方法,用于设置侧边栏的路由。首先,它从 `$route` 对象中获取当前路径,并根据 `/` 进行分割,取出第一个片段作为 `key`。然后,它通过遍历 `this.routes` 数组,找到与 `key` 相对应的路由对象 `item`。如果该路由对象有子路由(即 `item.child.length > 0`),则将子路由通过 Vuex 的 `commit` 方法设置到 `permission/SET_SIDEBAR_ROUTERS` 状态中;否则,直接将该路由对象作为数组项设置到 `permission/SET_SIDEBAR_ROUTERS` 状态中。这样,就可以动态地根据当前路由设置侧边栏的内容。
this.$store.commit('permission/SET_SIDEBAR_ROUTERS', [item]);
这段代码是使用 Vuex 中的 `commit` 方法,将路由对象 `item` 作为参数,设置到名为 `permission/SET_SIDEBAR_ROUTERS` 的状态中。其中 `permission` 是命名空间,`SET_SIDEBAR_ROUTERS` 是该命名空间下的一个状态属性,用于存储侧边栏的路由信息。这里将路由对象作为数组 `[item]` 的元素传递给 `commit` 方法,是因为 `SET_SIDEBAR_ROUTERS` 期望的是一个数组类型的路由信息。这样,就可以通过调用 `this.$store.state.permission.sidebarRouters` 获取到当前的侧边栏路由信息。
阅读全文