У меня есть простой Vuex
модуль для объекта глобальной даты:
import moment from 'moment';
const state = {
date: moment()
}
// getters
const getters = {
date: state => state.date,
daysInMonth: state => state.date.daysInMonth()
}
// mutations
const mutations = {
subtractOneDay(state) {
state.date.subtract(1, 'days');
}
}
export default {
state,
getters,
mutations
}
Один из моих дочерних компонентов:
import { mapGetters, mapMutations } from 'vuex';
export default {
computed: Object.assign(mapGetters(['date', 'daysInMonth']), {}),
methods: {
subtractOneDay() {
this.$store.commit('subtractOneDay');
console.log(this.date.format('YYYY-MM-DD'), this.date.daysInMonth(), this.daysInMonth)
}
},
created() {
console.log('blocks created')
},
mounted() {
console.log('blocks mounted')
}
}
В основном мне нужно получить дни месяца (29, 29, 30 или 31) при изменении date
.
Проблема в том, что вычисляемое свойство daysInMonth
не изменяется ...