系列导航

vue学习笔记 一、环境搭建

vue学习笔记 二、环境搭建+项目创建

vue学习笔记 三、文件和目录结构

vue学习笔记 四、定义组件(组件基本结构)

vue学习笔记 五、创建子组件实例

vue学习笔记 六、ref定义单个数据

vue学习笔记 七、方法的定义和使用

vue学习笔记 八、toRef的使用

vue学习笔记 九、父子组件实例-基本结构

vue学习笔记 十、状态管理基础结构

vue学习笔记 十一、计算属性介绍

vue学习笔记 十二、通过计算属性获取定义的状态数据

vue学习笔记 十三、路由介绍

vue学习笔记 十四、页面跳转

vue学习笔记 十五、组件挂载过程及query方式带参数的页面跳转

vue学习笔记 十六、params方式带参数的页面跳转

vue学习笔记 十七、父子组件 ---> 子组件传值

vue学习笔记 十八、父子组件相互传递参数

vue学习笔记 十九、实例完整代码

   

一、知识点

params进行页面间参数传递的好处参数不会在url里出现,更加安全。

二、  项目结构截图

三、代码:

预期流程:先创建一个Start.vue 登录http://localhost:8080/    后先跳转到Start.vue组件,在Start.vue组建中向Home.vue跳转并带有参数,观察url地址里是否有参数及浏览器控制台的输出

index.js(和上一章节的没有任何变化)

import { createRouter, createWebHistory,createWebHashHistory } from 'vue-router'
import Start from '../views/Start.vue' //路由的配置属组
//paht:路由路劲 必须以/开头 必填
//component:对应的路由组件 必填
//name:路由的名字
const routes = [
{
path: '/',
name: 'Start',
component: Start
},
{
path: '/home',
name: 'Home',
//按需引入
//如果没有访问/about 就不会加载这个组件 节约性能
component: () => import( '../views/Home.vue')
},
{
path: '/about',
name: 'About',
//按需引入
//如果没有访问/about 就不会加载这个组件 节约性能
component: () => import( '../views/About.vue')
}
] //创建路由对象
const router = createRouter({
//createWebHashHistory hash模式路径前面会多一个#号
history: createWebHistory(process.env.BASE_URL),
routes
}) export default router

Start.vue

<template>
<div>
<button @click="start">开始任务</button>
</div>
</template> <script>
import {defineComponent,ref } from 'vue'
import {useRouter} from 'vue-router'
export default defineComponent({
name :'Start',
setup(){
//setup组件创建的过程
let router = useRouter()
let name = ref('jack')
let num =ref(10)
let obj =ref({
msg:'start'
}) let start = ()=> {
//push如果是传的对象的形式 就可以传递参数
//push里面还可以传入name, name是路由名字index.js里定义的
//params 传参只能用name 传递参数 参数不会在地址栏里 刷新后参数会消失
router.push({
name:'Home',
//params模式传参
params:{
//前面的name可以随便取
name:name.value,
num:num.value,
obj:JSON.stringify(obj.value)
}
})
}
return {
start
}
}
}) </script> <style>
</style>

Home.vue

<template>
<div>
<h1>这是Home page</h1>
</div> </template> <script>
//编写js内容 import {defineComponent,computed,ref } from 'vue'
import {useStore} from 'vuex'
import {useRouter,useRoute} from 'vue-router' export default defineComponent({
name:'Home',
components:{ },
setup(){
//router 是全局路由对象
let router = useRouter()
console.log(router)
//route是当前路由对象
let route = useRoute()
console.log(route.query)
//query传递过来的参数 都是字符串的类型
console.log(route.params.name)
console.log(route.params.num)
console.log(route.params.obj) return{ }
}
}) </script> <style scoped lang="scss">
</style>

四、效果

1、进入Start.vue组件,点击“开始任务”按钮

2、进入Home.vue组件后浏览器里没有参数,并且在浏览器的控制台里看到了Home.vue输出了接受到的参数。

vue学习笔记 十六、params方式带参数的页面跳转的更多相关文章

  1. python3.4学习笔记(十六) windows下面安装easy_install和pip教程

    python3.4学习笔记(十六) windows下面安装easy_install和pip教程 easy_install和pip都是用来下载安装Python一个公共资源库PyPI的相关资源包的 首先安 ...

  2. vue学习笔记(十)路由

    前言 在上一篇博客vue学习笔记(九)vue-cli中的组件通信内容中,我们学习组件通信的相关内容和进行了一些组件通信的小练习,相信大家已经掌握了vue-cli中的组件通信,而本篇博客将会带你更上一层 ...

  3. (C/C++学习笔记) 十六. 预处理

    十六. 预处理 ● 关键字typeof 作用: 为一个已有的数据类型起一个或多个别名(alias), 从而增加了代码的可读性. typedef known_type_name new_type_nam ...

  4. Vue学习笔记十:过滤器

    目录 公共过滤器的写法 简易过滤器+带参数过滤器+多过滤器 私有过滤器 公共过滤器的写法 过滤器的写法还是很简单的 ,如下 <p>{{ msg | filtermsg }}</p&g ...

  5. spring in action学习笔记十六:配置数据源的几种方式

    第一种方式:JNDI的方式. 用xml配置的方式的代码如下: 1 <jee:jndi-lookup jndi-name="/jdbc/spittrDS" resource-r ...

  6. vue学习笔记(六) ----- vue组件

    一.模块化与组件化 模块化的定义 模块化在Node中是一个规范,定义一些模块的相关的规则,从代码角度上来说,方便做区别,如果不使用模块化,写在js文件中不利于后期维护和扩展,从代码的层面上就把相关的功 ...

  7. vue学习笔记(六)— 关于Vuex可以这样简单理解

    关于Vuex可以这样简单理解 作者:狐狸家的鱼 本文链接:关于Vuex GitHub:sueRimn 概念理解 和大多数文章都一样,从概念解释到引出问题再举例解决问题. 官网中,Vuex是状态管理模式 ...

  8. yii2源码学习笔记(十六)

    Module类的最后代码 /** * Registers sub-modules in the current module. * 注册子模块到当前模块 * Each sub-module shoul ...

  9. Java基础学习笔记十六 集合框架(二)

    List List接口的特点: 它是一个元素存取有序的集合.例如,存元素的顺序是11.22.33.那么集合中,元素的存储就是按照11.22.33的顺序完成的. 它是一个带有索引的集合,通过索引就可以精 ...

  10. 从零开始的vue学习笔记(六)

    混入 混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能.简单解释就是把一个Vue组件中的内容提供给别的组件来用.例子: // 定义一个混入对象 var myMixin ...

随机推荐

  1. 文心一言 VS 讯飞星火 VS chatgpt (151)-- 算法导论12.2 7题

    七.用go语言,对于一棵有 n 个结点的二叉搜索树,有另一种方法来实现中序遍历,先调用 TREE-MINIMUM 找到这棵树中的最小元素,然后再调用 n-1 次的 TREE-SUCCESSOR.证明: ...

  2. [计蒜客20191103B] 饮料

    小 B 出门游玩,他现在走到了 \(n\) 家饮品店前,第 \(i\) 家买饮料的花费为$ cost_i$ ,他只能去花费不超过自己所带钱数额的店,但他现在不确定自己兜里有多少钱,所以现在给出 \(m ...

  3. 最好用的AI换脸软件,rope下载介绍

    随着AI技术的广泛运用,市面上的换脸软件也多了起来,今天给各位介绍其中的王者Rope! 先上两个动图,给大伙看看效果 rope是如何实现这种自然的效果呢?这得益于机器学习技术的不断发展,rope经过深 ...

  4. django自带的cache缓存框架使用

    https://docs.djangoproject.com/zh-hans/4.2/topics/cache/#top 主要步骤官网也写得很清楚了,包含怎么区使用. 这里就展示一些配置django- ...

  5. BFS(二)转动转盘锁

    对应 LeetCode 752.转动转盘锁 ### 问题定义 你有一个带有四个圆形拨轮的转盘锁.每个拨轮都有10个数字: '0', '1', '2', '3', '4', '5', '6', '7', ...

  6. PythonAnywhere 部署Flask项目

    一. 注册账号 官网:https://www.pythonanywhere.com/ 二. 将GitHub上的项目发送至PythonAnywhere 三.配置环境及运行 git clone https ...

  7. Git使用经验总结2-配置用户名邮箱

    可以使用git config指令来配置一些设置,比如配置用户名邮箱.在开发团队要求成员配置用户名和邮箱是很有用的,可以配合工具区分成员的代码,以及将代码中的问题发送给成员的邮箱中. 查看当前Git的用 ...

  8. 分门别类输入输出,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本数据类型和输入输出EP03

    前文再续,Go lang和Python一样,基础数据类型有着很多分类,分门别类,一应俱全.它们对应着不同的使用场景,分别是:整形.浮点.字符.字符串.布尔等等.常用的基本数据类型经常会参与日常业务逻辑 ...

  9. ECS实践案例丨逻辑卷的创建和扩容操作指导

    摘要:实现跨硬盘使用,在传统硬盘之上的一层,在云服务器中可以实现跨EVS使用,用户在某些场景需要创建逻辑卷或者对已有的逻辑卷进行扩容处理,或者在某些时候由于误操作导致上述操作失败. [背景描述]: 实 ...

  10. APP违法使用个人信息?不用怕,华为云VSS为你保驾护航

    摘要:华为云VSS漏洞扫描服务移动应用安全检测,为华为云客户提供移动应用的合规检测能力,遵循工信部164号文要求,针对安卓(apk)和鸿蒙(hap)应用进行安全和隐私合规问题检测. 本文分享自华为云社 ...