Как сказать, чтобы Vuefire Firestore запускался после «созданного» хука? - PullRequest
0 голосов
/ 11 октября 2018

Я использую vuefire для моего нового проекта Vue.js.Но есть проблема с инициализацией ...

Одно из моих свойств данных необходимо инициализировать с помощью метода.Для этого я использую созданный хук Vue.js.На самом деле мне нужно значение этого свойства для моего запроса в firestore.

Проблема в следующем: кажется, что запрос firestore запускается до созданного хука .

Как я могу выполнить свои запросы пожарного хранилища после того, как созданный хук был запущен?

Спасибо!

data: function () {
  return {
    currentWeek: null
  }
},
firestore: function (currentWeek) {
  return {
    slots: db.collection('slots').where('start', '>=', this.currentWeek)
  }
},
created: function () {
  this.currentWeek = moment().startOf('week')
},

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

Я обнаружил, что могу решить эту проблему с помощью часов и привязки:

data: function () {
  return {
    currentWeek: null,
    slots: []
  }
},
created: function () {
  this.currentWeek = moment().startOf('week')
},
watch: {
  currentWeek (currentWeek) {
    this.$bind('slots', db.collection('slots')
      .where('start', '>=', moment(currentWeek).toDate())
  }
}

Я уверен, что можно найти лучшее решение ...

0 голосов
/ 12 октября 2018

это не точный код, но, в основном, вы хотите использовать $firestoreRefs, чтобы выполнить запрос внутри метода created жизненного цикла

data: function () {
  return {
    currentWeek: null,
    slots : []
  }
},
created: function () {
  this.currentWeek = moment().startOf('week')
  this.slots = this.$firestoreRefs['slots'].where('start', '>=', this.currentWeek)
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...