Обновление массива в vuex, не реагирующее в компоненте - PullRequest
1 голос
/ 21 марта 2019

Я пытаюсь вытолкнуть / выдвинуть массив, который находится в модуле vuex.

при просмотре в vue dev tools массив правильно добавляет / удаляет. Однако вычисляемое свойство не обновляется, я ожидаю изменения, но оно не работает.

В модуле Vuex

// initial state
const state = {
  expandedPayments: []

}

// getters
const getters = {
  expandedPayments(state) {
    return state.expandedPayments
  },


}

// mutations
const mutations = {
  [Mutations.PUSH_PAYMENTID](state, id) {
    state.expandedPayments.push(id)
  },

  [Mutations.POP_PAYMENTID](state, id) {
    _.pull(state.expandedPayments, id)
  }
}

В компоненте

 <tr v-show="isExpanded">

...

 isExpanded() {
      return  _.includes(this.expandedPayments, this.paymentId)
    },
    ...mapGetters('payment', ['expandedPayments', 'isExpanded'])

1 Ответ

0 голосов
/ 21 марта 2019

Я думаю, что это потому, что вы используете здесь метод includes.Этот метод должен проверять, является ли элемент частью коллекции.

Вы можете попробовать это:

isExpanded() {
    return  this.expandedPayments.indexOf(this.paymentId) !== -1
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...