Alex_Wells
@Alex_Wells
PHP/Kotlin

Какова ответственность vuex action?

Использую vue2 + vuex, с примерно такой структурой.

Вопрос: какая должна быть ответственность у action'ов? Например, есть action:

setLocale({commit}, obj) {
        commit(TYPES.SET_LOCALE, obj);
        Vue.cookie.set('locale', obj, { expires: '5Y' }); // 5 years
        i18n.locale = obj;
    }

Этот метод позже мапится в компоненте и используется напрямую. Должен ли я выносить все это куда-то? А то получается, что у меня бизнес логика в vuex store, что явно неправильно.
  • Вопрос задан
  • 226 просмотров
Решения вопроса 1
kulakoff
@kulakoff
Vue.js developing
Компоненты вызывают экшены чтобы перейти в определённое состояние. Экшены взаимодействуют с сервисами, которые дают необходимые данные для изменения состояния.
Управление локалью можно рассматривать как сервис. Поэтому имхо все нормально.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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