我需要在默认模式下运行 Vue 路由器(也就是散列模式,也就是我不能在history模式下运行它)。在那种模式下,我所有的动态路由都包含一个前导,例如http://myurl.com/#/highlights. 但是,如果您删除该前导哈希,例如 ( http://myurl.com/highlights) 站点会中断(给出错误no input file specified)。
我的目标是确保如果不满足任何匹配的路由条件,并且用户未通过身份验证,则将用户重定向到登录屏幕,如果他们通过身份验证但没有匹配路由,则将其重定向到主页.
这是我的router.js:
import Vue from 'vue'
import Router from 'vue-router'
import Home from './views/Home.vue'
import Programs from './views/Programs.vue'
import Sizzle from './views/Sizzle.vue'
import Login from './views/Login.vue'
Vue.use(Router)
export default new Router({
routes: [
{
path: '/',
redirect: {
name: "login"
}
},
{
path: "/login",
name: "login",
component: Login,
},
{
path: '/highlights/:slug?',
name: 'home',
component: Home,
props: (route) => ({ slug: route.params.slug || categories[0].slug })
},
{
path: '*',
redirect: {
name: "login"
}
}
]
})
*请注意,这categories是我在加载任何 Vue.js 文件之前通过脚本标记全局实例化的 javascript 变量。
慕斯709654
白衣非少年
相关分类