[Vue warn]: Write operation failed: computed property is readonly

Есть переменная объект employees, которая передается из state vuex.

computed: {
    ...mapState ({
        employee: state => state.day.employees,
    }),
},

При попытке изменить этот объект

this.employee = this.employee.map(x => {
    if(x.id === itemId) {
        x.cell_id = cell_id
    }
    return x
})

Вылезает ошибка [Vue warn]: Write operation failed: computed property "employee" is readonly. Как сделать чтобы этот объект можно было изменять?


Ответы (1 шт):

Автор решения: Arteil

Получилось решить проблему в store

mutations: {
    setEmployeesCell(state, data) {
        state.employees = state.employees.map(x => {
            if(x.id === data.item_id) {
                x.cell_id = data.cell_id
            }
            return x
        })
    }
},

actions: {
    setCell({ commit }, data) {
        commit('setEmployeesCell', data)
    }
}

на самой странице

methods: {
    onDrop() {
        data  = {
            item_id: itemId,
            cell_id: cell_id
        }
        this.$store.dispatch('day/setCell', data)
    }
}
→ Ссылка