快捷导航

vuex 和 vue-router如何结合使用?

例如要实现用户登录后跳转,很自然的想到将login这个异步操作放到action,登录成功后再触发mutation来修改应用状态(设置已登录状态),但是之后如何触发路由跳转呢,这点我一直想不通……

免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。

版权声明:作者保留权利,不代表本站立场。

回复

使用道具 举报

参与会员1

importVuefrom'vue';importVueRouterfrom'vue-router';importfiltersfrom'./filters';importrouterMapfrom'./routers';importFastClickfrom'fastclick';Vue.use(VueRouter);$.ajaxSettings.crossDomain=true;//实例化Vue的filterObject.keys(filters).forEach(k=>Vue.filter(k,filters[k]));//实例化VueRouterletrouter=newVueRouter({hashbang:true,history:false,saveScrollPosition:true,transitionOnLoad:true});//登录中间验证,页面需要登录而没有登录的情况直接跳转登录router.beforeEach((transition)=>{//处理左侧滚动不影响右边$("html,body,#page").removeClass("scroll-hide");FastClick.attach(document.body);if(transition.to.auth){if(localStorage.userId){transition.next();}else{varredirect=encodeURIComponent(transition.to.path);transition.redirect('/login?redirect='+redirect);}}else{transition.next();}});letapp=Vue.extend({});routerMap(router);router.start(app,"#app");
回复

使用道具 举报

可能感兴趣的问答

发新帖
  • 微信访问
  • 手机APP