- 已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。
这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
21小时前关门了。
Improve this question
一年前,我为另一个项目构建了一个响应式导航组件,所以我决定回收我的代码用于我的新项目。但它不起作用,我在控制台上得到的是:
[vuex]未知操作类型:导航/切换边栏
- nav是位于存储文件夹中的文件的名称。
- toogleSidebar是我在状态上用来处理变异的属性。
我有3个不同的组件。这里是第一个的代码,只是链接。
组件名称:标题链接。
<template>
<ul class="nav-list">
<li class="nav-item"><nuxt-link to="">Noticias</nuxt-link></li>
<li class="nav-item"><nuxt-link to="">Categorias</nuxt-link></li>
<li class="nav-item"><nuxt-link to="">Acerca de</nuxt-link></li>
<li class="nav-btn">
<nuxt-link to=""><button class="btn">Ingresar</button></nuxt-link>
</li>
</ul>
</template>
第二个组件的代码。组件名称:标题菜单。
<template>
<header>
<div>
<nuxt-link to="/">
<img src="../static/logo1.png" alt="" class="logo" />
</nuxt-link>
</div>
<div
class="drawer-toggle"
role="button"
@click="$store.dispatch('nav/toggleSidebar')"
>
<fa-icon icon="bars" class="icon" />
</div>
<div class="app-links">
<header-links></header-links>
</div>
</header>
</template>
<script>
import HeaderLinks from './HeaderLinks.vue'
export default {
components: { HeaderLinks },
}
</script>
最后一个组件名称为:侧导航标题。
<template>
<div class="sidenav-container">
<div v-if="isSidebar" class="backdrop" @click="hideSidebar"></div>
<transition name="slide-side">
<div v-if="isSidebar" class="sidenav">
<header-links></header-links>
</div>
</transition>
</div>
</template>
<script>
import HeaderLinks from './HeaderLinks.vue'
export default {
components: { HeaderLinks },
computed: {
isSidebar() {
return this.$store.getters['nav/toggleSidebar']
},
},
methods: {
hideSidebar() {
this.$store.dispatch('nav/toggleSidebar')
},
},
}
下面是我的nav.js文件的代码:
export const state = () => ({
toggleSibebar: false,
})
export const mutations = {
TOGGLE_SIDEBAR(state) {
state.toggleSibebar = !state.toggleSibebar
},
}
export const actions = {
toggleSibebar({ commit }) {
commit('TOGGLE_SIDEBAR')
},
}
export const getters = {
toggleSibebar: (state) => state.toggleSibebar,
}
当我单击条形图标时,没有任何操作,相反,正如我前面提到的,我得到了一个控制台错误。
1条答案
按热度按时间c8ib6hqw1#
我有一个拼写错误,我写的不是togglesidebar而是togglesibebar。更正后,代码可以正常工作。
下面是代码:
在我的项目上实现ESlint也是一个解决方案。