router

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title></title>
	<script type="text/javascript" src="js/vue.js"></script>
	<script type="text/javascript" src="js/vue-router.js"></script>
</head>
<body>
	<div id="example">
		<router-view></router-view>
	</div>

	<script type="text/javascript">
		var Login=Vue.component('login-component',{
			methods:{
				handleClick:function(){
					this.$router.push('/myRegister');
				}
			},
			template:`
				<div>
					<h1>这是登录界面</h1>
					<button @click="handleClick">注册</button>
					<router-link to="/myRegister">注册</router-link>
				</div>
			`
		});

		var Register=Vue.component('register-component',{
			template:`
				<h1>这是注册界面</h1>
			`
		});

		const myRoutes=[
			{path:'/myLogin',component:Login},
			{path:'/myRegister',component:Register}
		];

		const myRouter=new VueRouter({
			routes:myRoutes
		});

		new Vue({
			el:'#example',
			router:myRouter,
			data:{

			}
		})
	</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title></title>
	<script type="text/javascript" src="js/vue.js"></script>
	<script type="text/javascript" src="js/vue-router.js"></script>
</head>
<body>
	<div id="example">
		<router-view></router-view>
	</div>

	<script type="text/javascript">
		var Login=Vue.component('login-component',{
			template:`
				<div>
					<h1>登录页面</h1>
					<router-link to="/myMain">主页面</router-link>
				</div>
			`
		});

		var Main=Vue.component('main-component',{
			methods:{
				logout(){
					this.$router.push('/myLogin');
				}
			},
			template:`
				<div>
					<h1>主页面</h1>
					<button @click="logout">退出登录</button>
				</div>
			`
		});

		const myRoutes=[
			{path:'/myLogin',component:Login},
			{path:'/myMain',component:Main}
		];

		const myRouter=new VueRouter({
			routes:myRoutes
		})

		new Vue({
			el:'#example',
			router:myRouter
		})
	</script>
</body>
</html>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
router.¥router是一个对象,它是vue-router的核心。其中包含了几个API,包括router.addRoute、router.removeRoute、router.hasRoute和router.getRoutes。这些API都依赖于matcher实现。matcher是vue-router中的一个重要概念,它用于匹配路由和组件。如果想要深入了解matcher的工作原理,建议回顾之前的文章。 具体来说,router.addRoute用于添加路由。当使用addRoute添加路由时,如果第一个参数为路由name,那么会添加一个嵌套路由;否则,添加的是一个非嵌套路由。例如,可以使用addRoute添加非嵌套路由: router.addRoute({ name: 'admin', path: '/admin', component: Admin }) 也可以使用addRoute添加嵌套路由: router.addRoute('admin', { path: 'settings', component: AdminSettings }) router.removeRoute用于移除路由,router.hasRoute用于检查路由是否存在,router.getRoutes用于获取当前已添加的所有路由信息。 在页面上使用<router-view></router-view>组件标签是用来显示路由对应的组件的。这个标签不是固定的,它是路由出口的标记。当路由匹配到指定的path时,会将<router-view></router-view>替换为在路由表中配置好的组件。在页面上使用配置好的路由时,要加上一个#号。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [【vue-router源码】五、router.addRoute、router.removeRoute、router.hasRoute、router.getRoutes源码分析](https://blog.csdn.net/qq_33635385/article/details/125158829)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [vue-router router-link](https://blog.csdn.net/weixin_43195512/article/details/90735892)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值