Я клонировал свое состояние из Vuex в массив моего компонента data()
.Моя проблема в том, что я пытаюсь удалить первый элемент в массиве из моего клона с помощью shift()
, а также добавить его обратно с помощью unshift()
Я получаю сообщение об ошибке:
[vuex]Не изменяйте состояние хранилища vuex вне обработчиков мутаций.
Как я могу удалить в своем клонированном состоянии что-то, что не влияет на само состояние?
Сохранение / клонирование
beforeMount () {
this.traningArea = this.stateExercises
},
computed: {
...mapState({
userStore: state => state.userStore,
tsStore: state => state.trainingSchemeStore
}),
stateExercises () {
return this.tsStore.schemeExercises
}
}
Попытка запустить shift()
при нажатии и unshift()
при повторном нажатии пользователя
this.traningArea[0].shift()
this.traningArea[0].unshift(obj)
И вот здесь у меня есть эта ошибка.
СОСТОЯНИЕ
const state = {
trainings: []
}
const actions = {
getTrainingExercise: ({commit}, ids) => {
var payload = {
'trainings_id': ids
}
return Vue.http.post(getTrainingsById, payload,
{headers: getHeader()})
.then(response => {
if (response.status === 200) {
commit('SET_TERL', response.body.data)
}
})
},
const mutations = {
SET_TERL(state, trainings) {
state.trainings.push(trainings)
}
}