我在我的应用程序中使用laravel和vue js。当我使用laravel auth打开时,所有vue路线都要求登录。我想创建一些无需用户登录即可访问的路由。换句话说,我也希望来宾用户也可以访问某些路由。但是目前,所有路由都要求对用户进行身份验证。这是我的路线
const routes = [
{ path: '/dashboard_admin', component: require('./components/dashboard.vue').default},
{ path: '/ongoing_events_admin', component: require('./components/events.vue').default } ,
{ path: '/courses_admin', component: require('./components/courses.vue').default},
{ path: '/front_images_admin', component: require('./components/front_images.vue').default},
{ path: '/news_admin', component: require('./components/news.vue').default},
{ path: '/main', component: require('./components/main_view/index_view_general.vue') ,
name: 'index',
props: true ,
beforeEnter:DontrequireLogin
},
//general vue
// { path: '/', component: require('./components/main_view/index_view_general.vue').default},
]
const router = new VueRouter({
mode: 'history',
routes // short for `routes: routes`
})
const app = new Vue({
el: '#app',
router
});
这些是我的路线。我希望其中的一些路由也可以由来宾用户访问,但目前所有路由都要求用户登录。
答案 0 :(得分:0)
因此,您需要执行此meta的操作,有关此内容的更多信息,请阅读其官方文档Route Meta
让我来解释一下meta的作用。
在meta中定义一个bolean对象,该对象指示,此路由适用于已验证的用户或来宾用户。让我们看下面的例子。
我拥有经过身份验证的路由,仅适用于经过身份验证的用户。
{path: '/account-setting',component:accountSetting,meta:{auth:true}},
所以我在meta中传递了auth对象,并在route.beforeach中决定了如何处理此路由。
与正常路线相同
{path: '/about',component:about}
在此,我不提供任何meta,表示对所有用户而言。
阅读文档以了解如何使用它。