# mutations
๋ฎคํ ์ด์ (mutations)์ ๋ทฐ์์ค์์ ์ํ ๊ฐ์ ๋ณ๊ฒฝํ๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ๋๋ค. ์ํ๋ ํญ์ ๋ฎคํ ์ด์ ์ผ๋ก ๋ณ๊ฒฝ๋ฉ๋๋ค.
# mutations ์ ์ธ
๋ฎคํ ์ด์ ์ ์ ์ธํ๋ ์ฝ๋์ ๋๋ค.
new Vuex.Store({
state: {
message: 'Hello Vue.js'
},
mutations: {
reverseMessage(state) {
state.message = state.message.split('').reverse().join('');
}
}
})
์ ์ฝ๋๋ ๋ฎคํ
์ด์
์ reverseMessage()
๋ฉ์๋๋ฅผ ์ด์ฉํ์ฌ message
์ํ ๊ฐ์ ์ญ์์ผ๋ก ๋ณํํ๋ ์ฝ๋์
๋๋ค.
# mutations ํธ์ถ
์ปดํฌ๋ํธ์์ ๋ฎคํ
์ด์
์ ํธ์ถํ๋ ค๋ฉด commit()
API๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ์ฝ๋๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
ย
new Vue({
methods: {
reverseMsg() {
this.$store.commit('reverseMessage');
}
}
})
์ ์ปดํฌ๋ํธ์์ reverseMsg()
๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด ๋ฐ๋ก reverseMessage()
๋ฎคํ
์ด์
์ด ํธ์ถ๋๋ฉด์ ์ํ ๊ฐ์ด ๋ณํ๋ฉ๋๋ค.
TIP
๋ฎคํ ์ด์ ์ ๊ฐ๋ ์ methods ์์ฑ๊ณผ ๋งค์นญ๋ฉ๋๋ค. ๋ฉ์๋ ์์ ์ฝ๋์ ์์ ์ฝ๋๋ฅผ ๋น๊ตํด๋ณด์ธ์.