vuex mutation doesn't work
Doesn't change value of state by argument destructuring on mutations.
by gongzza
HTML
<script src="https://unpkg.com/[email protected]"></script>
<div id="app">
{{ $store.state.text }}<br>
<button @click="$store.commit('dontWork1', 'dontWork1')">dontWork1</button><br>
<button @click="$store.commit('dontWork2', 'dontWork2')">dontWork2</button><br>
<button @click="$store.commit('work', 'work')">work</button>
</div>
JavaScript
Vue.use(Vuex)
const store = new Vuex.Store({
state: {
text: 'hello'
},
mutations: {
// don't work
dontWork1({text}, payload) {
text = payload
},
// don't work
dontWork2(state, payload) {
let text = state.text
text = payload
},
// work
work(state, payload) {
state.text = payload
}
}
})
new Vue({
el: '#app',
store
})