Vuex
Vuex
HTML
<div id="app">
<input type="checkbox" v-model="checked">
<button @click="toggleChecked">toggle checked</button>
<div>{{ checked ? 'Wow, I\'m checked!!' : 'false' }}</div>
</div>
<script src="https://cdn.jsdelivr.net/g/vue@2.0.3,vuex@2.0.0"></script>
JavaScript
const store = new Vuex.Store({
state: {
checked: false
},
mutations: {
updateChecked(state, val) {
state.checked = !!val
}
}
})
new Vue({
store,
el: '#app',
computed: {
checked: {
get() {
return this.$store.state.checked
},
set(val) {
this.$store.commit('updateChecked', val)
}
}
},
methods: {
toggleChecked() {
this.checked = !this.checked
}
}
})