Как перенаправить на две разные страницы в зависимости от типа в vuejs vuex store? - PullRequest
0 голосов
/ 15 ноября 2018
Now In my vuex store I have

import Vue from "vue";
import Vuex from "vuex";

Vue.use(Vuex);

export default new Vuex.Store({
  state: {
    isLoggedIn: !!localStorage.getItem("token"),
    isLog: !!localStorage.getItem("situation"),
    type: !!localStorage.getItem("type")
  },
  mutations: {
    loginUser(state) {
      state.isLoggedIn = true;
      state.isLog = true;
      state.type = true;
    },
    logoutUser(state) {
      state.isLoggedIn = false;
      state.isLog = false;
      state.type = false;
    }
  }
});

Это мои маршруты

router.beforeEach((to, from, next) => {
  // check if the route requires authentication and user is not logged in
  if (to.matched.some(route => route.meta.requiresAuth) && !store.state.isLoggedIn) {
    // redirect to login page
    next({
      name: "login"
    });
    return;
  }

  // if logged in redirect to dashboard
  if (to.path === "/login" && store.state.isLoggedIn) {
    next({
      path: "/"
    })
    return;
  }

  next();
});

Так вот, если я вошел в систему, я перенаправил на "/".

Теперь я хочу

в зависимости от типа, мне нужно перенаправить на «/», если type «ad», и на «/ web», если type «user».

Как я могу добиться того же.

Пожалуйста, помогите мне найти решение

...