Есть ли способ отслеживать изменения состояния или геттеров в модуле vuex? - PullRequest
0 голосов
/ 27 мая 2020

Я знаю, что могу наблюдать за состояниями / получателями vuex из Vue компонентов, используя параметр $watch.

Вместо этого я хотел бы наблюдать за состояниями / получателями внутри модуля Vuex. Я хочу, чтобы бизнес-лог c, который выполняется при изменении состояния / получателей, полностью внутри модуля vuex. Причина в том, что этот logi c относится к приложению и не связан с каким-либо компонентом в частности.

Я знаю, что есть функция наблюдения за хранилищем , но я не уверен, как использовать его внутри модуль vuex. Если я добавлю такой код в свой модуль vuex sessions:

import store from '@/store'

store.watch((state, getters) => {
  return getters['session/idleTime']
},
newVal => {
  if (newVal > 600) {
    // notify user session is about to expire
  }
})

я получаю store is undefined error, потому что это создает циклическую зависимость (например, store пытается загрузить модуль sessions, пока тот же модуль пытается импортировать и использовать объект хранилища)

Итак, есть ли способ выполнить наблюдение за состоянием / получателями в модуле vuex?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...