码迷,mamicode.com
首页 > 其他好文 > 详细

vue-router 嵌套路由没反应

时间:2017-11-02 18:03:14      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:logs   javascrip   pat   问题   view   class   rip   host   col   

先看下route.js

//route.js
const App = () => import(‘../App.vue‘);
const Login = () => import(‘../component/Login.vue‘);
const Class = () => import(‘../component/Class.vue‘);
const CourseList = () => import(‘../component/CourseList.vue‘);
const CourseContent = () => import(‘../component/CourseContent.vue‘);

const routers = [{
	path:‘/‘,
	component:App,
	children:[{
			path:‘login‘,
			component:Login
		},{
			path:‘class‘,
			component:Class
		},
		{  
			path:‘course‘,
			children:[{
					path:‘list‘,
					component:CourseList
				},{
					path:‘content‘,
					component:CourseContent
				}
			]
			
		},
	]
}]

export default routers

  

当你访问的时候,发现
http://localhost:8080/#/login
http://localhost:8080/#/class
都正常,但是:
http://localhost:8080/#/course/list
http://localhost:8080/#/course/content
都是一片空白,检查元素,发现没有加载过来。检查,子路由前面并没有加/,所以这没有问题,排除。
其实这是list的父级course没有component,有了componnet,并且需要在这个component理要有<router-view></router-view>,修改下:

{ 
path:‘course‘,
component:Course
children:[{
path:‘list‘,
component:CourseList
},{
path:‘content‘,
component:CourseContent
}
]
},

Course.vue如下:

<template>
<div>
<router-view></router-view>
</div>
</template>

  

这样就可以实现嵌套了。想想,本例子中,其实App组件也是这样的,他提供了个<router-view></router-view>,对不对?

http://localhost:8080/#/course/list
http://localhost:8080/#/course/content
都可以访问了。

vue-router 嵌套路由没反应

标签:logs   javascrip   pat   问题   view   class   rip   host   col   

原文地址:http://www.cnblogs.com/xiaochongchong/p/7773239.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!