热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Vue路由传递参数$route$router导航守卫beforeEach

传递参数两种方式:params和queryparams的类型*配置路由格式:router:id*传递的方式:在path后面加上对应
传递参数

两种方式:params和query

params的类型

* 配置路由格式: `/router/:id`
* 传递的方式:在path后面加上对应的值
* 传递后形成的路径:` /router/123`, `/router/abc`


1.首先编写User.vue组件
2. App.vue 有一个router-link :to="'/user/'+userId",界面链接显示
3. router->index.js 配置/user/:id 路由映射方式,这样就根据userid映射成功了
4. 额外功能,User.vue显示路径id this.$route.params.userId,节课显示



query的类型

* 配置路由格式: `/router`,也就是普通方式
* 传递的方式:对象中使用query的key作为传递方式
* 传递后形成的路径: `/router?id=123`, `/router?id=abc`

1.新建profile.vue组件
2.路由配置: url->Component(关键)
3. 显示的界面,触发路由的配置
在这里插入图片描述
URL:协议://主机:端口/路径?查询
scheme://host:port/path?query

profile.vue取出来

<template><div><h2>我是profile组件</h2><h2>name: {{name}}</h2><h2>age: {{age}}</h2><h2>height: {{height}}</h2></div>
</template><script>export default {name: "Profile",data: function () {return{name: this.$route.query.nameage: this.$route.query.age,height: this.$route.query.height}}}
</script><style scoped></style>

也可以用函数来写

在这里插入图片描述

v-bind:to&#61;“对象”
this.$router.push(对象)

route与route与routerouter

$router &#61; $route &#43; $route…
$router 和 绑定html的id 和 APP组件渲染界面是统一层级的

Vue.use(VueRouter)

会执行VueRouter.install
install执行了什么&#xff1f;
VueRouter.install &#61; install install.js

注册了全局组件

Vue.component(&#39;RouterView&#39;,View)
Vue.component(&#39;RouterLink&#39;,Link)
Vue.prototype.$router &#61; this._routerRoot._router

所有的组件都继承自Vue类的原型!!!

略…

为什么要使用导航守卫&#xff1f;
  • 在一个SPA应用中&#xff0c;如何改变网页的标题呢&#xff1f;
    • SPA只有一个固定的HTML&#xff0c;切换不同的组件时&#xff0c;标签并不会改变
    • 我们可以通过Javascript修改title的内容window.document.title&#61;‘新标题&#39;

声明周期函数:
created() 创建vue实例时调用
mounted() 挂载数据时调用
updated() 界面刷新时调用&#xff0c;

<script>export default {name: "About",created() {document.title &#61; &#39;关于title&#39;}}
</script>

每个Vue都需要添加created() 函数
这样做太繁琐
在这里插入图片描述
在这里插入图片描述
beforeEach: 前置钩子(守卫)
afterEach: 后置钩子


推荐阅读
  • vue使用
    关键词: ... [详细]
  • 本文介绍了如何使用vue-awesome-swiper组件,包括在main.js中引入和使用swiper和swiperSlide组件,以及设置options和ref属性。同时还介绍了如何在模板中使用swiper和swiperSlide组件,并展示了如何通过循环渲染swipes数组中的数据,并使用picUrl属性显示图片。最后还介绍了如何添加分页器。 ... [详细]
  • 本文介绍了如何使用elementui分页组件进行分页功能的改写,只需一行代码即可调用。通过封装分页组件,避免在每个页面都写跳转请求的重复代码。详细的代码示例和使用方法在正文中给出。 ... [详细]
  • 先看看ElementUI里关于el-table的template数据结构:<template><el-table:datatableData><e ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • 用Vue实现的Demo商品管理效果图及实现代码
    本文介绍了一个使用Vue实现的Demo商品管理的效果图及实现代码。 ... [详细]
  • node.jsrequire和ES6导入导出的区别原 ... [详细]
  • 本文介绍了闭包的定义和运转机制,重点解释了闭包如何能够接触外部函数的作用域中的变量。通过词法作用域的查找规则,闭包可以访问外部函数的作用域。同时还提到了闭包的作用和影响。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 使用eclipse创建一个Java项目的步骤
    本文介绍了使用eclipse创建一个Java项目的步骤,包括启动eclipse、选择New Project命令、在对话框中输入项目名称等。同时还介绍了Java Settings对话框中的一些选项,以及如何修改Java程序的输出目录。 ... [详细]
author-avatar
zoooooz
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有