四、vue学习之路由

本文介绍了一个使用Vue和Vue Router实现的基本路由应用案例。通过定义登录和注册两个组件,并配置路由,展示了如何在Vue应用中实现页面切换。代码示例详细解释了组件定义、路由配置及页面链接的使用。
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>vue路由</title>
		<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
		<script src="js/vue-router.js" type="text/javascript" charset="utf-8"></script>
	</head>
	<body>
		<div id="app"></div>
	</body>
	<script>
		const Login = {
			template:'<div>我是登录</div>'
		};
		const Register = {
			template:'<div>我是注册</div>'
		};
		const routes = [
		  { path: '/login', component: Login },
		  { path: '/register', component: Register }
		]
		const router = new VueRouter({
		  routes // (缩写) 相当于 routes: routes
		})
		
		Vue.component('Vroute',{
			data(){
				return {
					
				};
			},
			template:'<div><router-link to="/login">登录</router-link><router-link to="/register">注册</router-link><router-view></router-view></div>'
		});
		new Vue({
			el:'#app',
			data(){
				return {
					
				};
			},
			template:'<Vroute/>',
			router //使路由生效
		});
	</script>
</html>

 

### Vue 2 路由使用指南 Vue 2 的路由功能通过 `vue-router` 库实现,它可以帮助开发者快速构建单页应用(SPA)。以下是 Vue 2 路由的配置和使用方法的详细指南。 #### 安装 Vue Router 在开始使用 Vue Router 之前,需要先安装它。可以通过 `npm` 或 `yarn` 安装: ```bash npm install vue-router --save ``` 或者 ```bash yarn add vue-router@3.6.5 ``` 安装完成后,需要在 `main.js` 文件中引入并注册 Vue Router: ```javascript import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) ``` #### 创建路由配置 接下来,需要创建一个路由配置文件。通常,这个文件会被放在 `src/router/index.js` 中。在这个文件中,定义路由规则并创建路由实例: ```javascript import Vue from 'vue' import Router from 'vue-router' import Home from '@/components/Home' import Content from '@/components/Content' import About from '@/components/About' import Submit from '@/components/Submit' Vue.use(Router) export default new Router({ routes: [ { path: '/', name: 'Home', component: Home }, { path: '/content', name: 'Content', component: Content }, { path: '/about', name: 'About', component: About }, { path: '/submit', name: 'Submit', component: Submit } ], mode: 'history' // 干掉地址栏里的 # 号 }) ``` #### 挂载路由实例 在 `main.js` 文件中,将创建的路由实例挂载到 Vue 应用中: ```javascript import Vue from 'vue' import App from './App.vue' import router from './router' new Vue({ router, render: h => h(App) }).$mount('#app') ``` #### 使用路由Vue 组件中,可以使用 `<router-link>` 组件进行路由跳转,并使用 `<router-view>` 组件来显示匹配的组件内容: ```html <template> <div> <router-link to="/home">Go to Home</router-link> <router-link to="/about">Go to About</router-link> <router-view></router-view> </div> </template> ``` #### 嵌套路由 Vue Router 还支持嵌套路由,可以在父路由下定义子路由。例如,定义 `/home` 路由下的子路由 `/home/xxx`: ```javascript const router = new VueRouter({ routes: [ { path: '/home', component: Home, children: [ { path: 'xxx', component: Xxx }, { path: 'yyy', component: Yyy } ] } ] }) ``` #### 通配符路由 为了处理 404 页面,可以使用通配符 `*` 来捕获所有未匹配的路由: ```javascript const routes = [ { path: '/foo', component: Foo }, { path: '/bar', component: Bar }, { path: '*', redirect: '/home' } // 默认跳转路由 ] ``` 需要注意的是,通配符路由应该放在路由配置的最后,因为 Vue Router 会按照定义顺序进行匹配。 #### 动态路由匹配 Vue Router 还支持动态路由匹配,例如匹配以 `/user-` 开头的任意路径: ```javascript const routes = [ { path: '/user-*', component: User } ] ``` #### 路由优先级 当同一个路径可以匹配多个路由时,匹配的优先级按照路由的定义顺序:谁先定义的,谁的优先级就最高。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值