@Artemio95

Почему в state ничего не приходит?

Всем привет! Не могу понять... Вот код
export const state = () => ({
  places: []
})

export const mutations = {
  SET_PLACES_TO_STATE: (state, payload) => {
    state.places = payload;
  },
}

export const actions = {

  GETPLACES({ commit }) {

    let promise = new Promise(resolve => {

      let getPlaces = this.$fireDb.ref()
      const receivedPlacesArray = []

      getPlaces.on(
        'value',
        (snapshot) => {
          const receivedPlaces = snapshot.val()
          receivedPlaces.forEach((el) => {
            let item = {
              id: el.id,
              status: el.status,
            }
            receivedPlacesArray.push(item)
          })
          resolve(receivedPlacesArray)
        },
        (error) => {
          console.log('Error: ' + error.code)
        }
      )
    })
    promise.then(receivedPlacesArray =>{
      console.log(receivedPlacesArray)
      commit('SET_PLACES_TO_STATE', receivedPlacesArray);
    })

  }
}
export const getters = {
  GET_PLACES_FROM_STATE(state) {
    return state.places
  }
}


Если я диспатчу экшн в компоненте, массив с данными выводится в консоль. Я могу занести в локальную переменную компонента полученный массив и все ок. Но я хочу передать его в стейт и уже дергать оттуда по компонентам. В чем может быть ошибка?
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ответы на вопрос 1
@YoloV
SET_PLACES_TO_STATE: (state, payload) => {
    state.places.push(payload)
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы