import Vue from 'vue'
import VueRouter from 'vue-router'
import Login from '@/views/login'
import Layout from '@/views/layout'
import Search from '@/views/search'
import SearchList from '@/views/search/list'
import ProDetail from '@/views/prodetail'
import Pay from '@/views/pay'
import MyOrder from '@/views/myorder'
import cart from '@/views/layout/layoutshow/cart'
import home from '@/views/layout/layoutshow/home'
import category from '@/views/layout/layoutshow/category'
import user from '@/views/layout/layoutshow/user'
Vue.use(VueRouter)
const routes = [
{ path: '/login', component: Login },
{
path: '/',
component: Layout,
redirect:'/home',
children:[
{ path: '/home', component: home },
{ path: '/cart', component: cart },
{ path: '/category', component: category },
{ path: '/user', component: user },
]
},
{ path: '/search', component: Search },
{ path: '/searchlist', component: SearchList },
// 动态路由传参,确认将来是哪个商品,路由参数中携带 id
{ path: '/prodetail/:id', component: ProDetail },
{ path: '/pay', component: Pay },
{ path: '/myorder', component: MyOrder }
]
const router = new VueRouter({
routes
})
//定义一个需要拦截的路径数组
const authUrls=['/pay','/myorder']
router.beforeEach((to, from,next) => {
if(!authUrls.includes(to.path)){
//没有包含直接放行
next()
}else{
next('/login')
}
})
export default router