猿问

关于vuex中mutation的问题 在线等非常着急 提示一下也可以呀

有这么一个场景是我今天写时候遇到过的
我在组件中写了一个router-to跳到一个组件上,并向那个组件传了一个name,这个name是在route中定义并用beforeEnter方法传到跳转组件里
跳转的组件用prop获取这个name
那么我就一个问题我获取这个name,现在去判断这个name的数据
那么在组件中methods定义一个方法goodorbad

if (name === 'zhangsan') {    return 'good'
    } else {    return 'bad'
    }

那么我现在要把这个方法写到vuex中mutation中,
我写一个

export const goodorbad (state, items) {  if (items.name === 'zhangsan') {        return 'good'
        } else {        return 'bad'
        }
    }

然后我在跳转到组件中写

...mapmutaion([    'goodorbad'
    ])
ps () {
    let items = {
    name: this.name
    }    this.goodorbad(items)
}

这样不能获取到return,我想为什么。


叮当猫咪
浏览 597回答 1
1回答

慕丝7291255

你去好好看看vuex的官方文档吧更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。Vuex 中的 mutations 非常类似于事件:每个 mutation 都有一个字符串的 事件类型 (type) 和 一个 回调函数 (handler)。这个回调函数就是我们实际进行状态更改的地方,并且它会接受 state 作为第一个参数:
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答