У меня есть хранилище vuex с несколькими модулями, и я хочу иметь возможность прослушивать «глобальные» вызовы dispatch
или commit
(также называемые действиями и мутациями) из модуля. Например, в модуле auth
есть такие действия, как вход и выход из системы. Всякий раз, когда эти действия отправляются, я хочу, чтобы другой модуль ui
также выполнил какое-то действие, например, установил язык на основе зарегистрированного пользователя.
Я знаю, что могу просто отправить действия ui
из действий входа и выхода в модуле auth
. Но я бы предпочел, чтобы все было наоборот, так что ui
прослушивает события (действия и / или мутации), отправленные в auth
. Таким образом, я могу легко создавать побочные эффекты, не меняя «оригинальный» модуль vuex.
Может быть, мне нужно использовать часы, но некоторые действия не изменяют состояние, поэтому я не всегда могу их использовать. Создание плагина также является опцией, но я не хочу создавать дополнительный плагин каждый раз, когда хочу создать такой побочный эффект.
Итак, мой вопрос; из модуля vuex как я могу прослушивать действия / мутации, отправленные из других модулей?