页面代码:
<div class="btn-fullscreen" @click="switchFullscreen()">
<el-tooltip effect="dark" placement="bottom" :content="fullscreen?`取消全屏`:`全屏`">
<i class="el-icon-rank"></i>
</el-tooltip>
</div>
<script>
import { mapState, mapActions } from 'vuex'
export default {
computed: mapState({
fullscreen: state => state.fullscreen
}),
methods: mapActions('header', [
'switchFullscreen'
])
}
</script>
Store:
// initial state
const state = {
collaspe: false,
fullscreen: false
}
// getters
// actions
const actions = {
switchFullscreen ({ state, commit }) {
commit('setFullscreenState')
}
}
// mutations
const mutations = {
setFullscreenState (state) {
state.fullscreen = !state.fullscreen
}
}
export default {
state,
actions,
mutations
}
点击按钮后,跟踪Devtool里, state.fullscreen里的值会变化
但按钮的提示一直是“全屏”,无论fullscreen的值怎么变
好像页面上的fullscreen和state里的fullscreen没有绑定在一起,我无论将state里的fullscreeen的默认值改成什么值,在初始化后页面都显示"全屏"
这个地方出问题了,少了module名,谢谢各位