IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Vue的路由(导航) -> 正文阅读

[JavaScript知识库]Vue的路由(导航)

【关于vue的路由(导航)的知识的学习】


目录

1、什么是路由?

2、路由模式

3、路由(导航)的跳转??

4、vue?的路由传参数

5、嵌套路由(子路由)

6、路由导航守卫


1、什么是路由?

路由是指路径和组件的一 一 对应关系

2、路由模式

vue有两种路由模式 :hash 和 history ;默认是 hash? 模式

? ? ? 区别:hash? 模式会带#号,不美观

? ? ? ? ? ? ? ? ?history? ? ? 不带#号,(使用时会向后台请求接口,易报404错误)

3、路由(导航)的跳转??

声明式导航router-link? ?to=" 要跳转的页面路径"?

编程式导航:this.$router.push()

4、vue?的路由传参数

(1)、query??传参:

既可以使用?name?也可以使用 path ,刷新页面参数不会丢失

            this.$router.push({
				name:'', 
				path: '',
				query: {}
			})
			
			this.$router.push('/info?canshu1=1&canshu2=2')
			
			//如何接受query参数:
			//	this.$route.query.属性名

(2)、params 传参:

只能使用 name 跳转,刷新的时候参数会丢失,不会显示到页面的 url

            this.$router.push({
				name:'', 
				params: {}
			})
			
			//如何接受params参数:
			//	this.$route.params.属性名

(3)、动态路由传参:

刷新的时候数据不会丢失

 {
	  path: '/info/:name/:age',
	  name: 'info',
	  component:()=>import('../views//info.vue')
  }

      //接收参数
      this.$route.params

5、嵌套路由(子路由)

嵌套路由常用于侧边导航,底部路由导航。

使用:

(1)、在展示的页面设置??<router-view/> 为第二个坑

(2)、在第二个坑的页面路由下设置子路由,使用 children

 {
    path: '/',
    name: 'Home',
    component: Home,
	children: [
		{
		  path: '/about',
		  name: 'About',
		  component: function () {
		    return import( '../views/About.vue')
		  }
		},
		{
			  path: '/my',
			  name: 'my',
			  component: ()=>import('../views/my.vue')
		},
	]
  },

6、路由导航守卫

路由导航守卫分三种:

(1)、全局导航守卫(在??router?文件夹下的 index.js 文件,在文件导出之前)

? ? ? ? ? ? 全局前置导航守卫:beforeEach

? ? ? ? ? ? 语法:

            router.beforeEach((to,from,next)=>{
				// to -- 到哪里去
				// from -- 从哪里来
				// next -- 下一步   重定向
			})

? ? ? ? ? ? 全局后置导航守卫:afterEach

? ? ? ? ? ??语法:

            router.afterEach((to,from)=>{
					
			})

? ? ? ? ? ? 全局解析守卫:beforeResolve

(2)、组件导航守卫(有3个,在要拦截的页面写)

        // 路由进入之前
		beforeRouteEnter(to,from,next){
			
		}
		// 路由更新
		beforeRouteUpdate(to,from,next){
			
		}
		
		// 路由离开之前
		beforeRouteLeave(to,from,next){
			
		}

(3)、单个独享的路由守卫(在路由下面写):beforeEnter

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-30 00:43:36  更:2022-09-30 00:47:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 19:23:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码