Vue项目中常见问题(39)路由传递参数结合回话存储

2023-10-10 07:30

本文主要是介绍Vue项目中常见问题(39)路由传递参数结合回话存储,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

gitee仓库地址:https://gitee.com/CMD-UROOT/sph-project/commits/master

面试题:

浏览器的存储功能是HTML5中新增的,分为本地存储和会话存储

本地存储:持久化的 ----存储数据上线5M左右

会话存储:并非持久化的----会话结束数据就消失

本地存储|会话存储,一般存储的是字符串

业务需求1:

会话存储

 思考:我们怎么把detail中详情的数据给到addcartsuccess?

 所以本地存储和会话存储不可以存对象,我们要把对象变成字符串存储,拿到字符串以后,我们在转对象

  1.在pages/Detail/index.vue中:

  2.在pages/AddCartSuccess/index.vue中:

  3.数据放到页面中:


gitee仓库地址:https://gitee.com/CMD-UROOT/sph-project/commits/master

大家根据上传历史进行查找你需要的代码

 

面试题:

浏览器的存储功能是HTML5中新增的,分为本地存储和会话存储

本地存储:持久化的 ----存储数据上线5M左右

会话存储:并非持久化的----会话结束数据就消失

本地存储|会话存储,一般存储的是字符串

 

业务需求1:

我们会发现我们点击加入购物车的商品和购物车中的商品不一样,因为我们购物车中的商品数据其实是写死了的,所以我们要进行路由传参,也可以不进行路由传参,我们在购物车里面再发一次请求,其实没有必要,因为我们在商品详情页已经拿到了商品的数据,我们直接传给购物车直接使用就行,没必要再发请求获取数据

注意,我们以前路由传参,传的都是一些数字什么的,都比较简单,而这次我们要传的是一个对象skuInfo,数据非常多

如果我们以query的方式来带这个对象的参数的话,可以是可以,但是我们会发现有恶心,这地址栏

会话存储

所以我们选择用另外的方式来带参,那就是会话存储

 我们这里只用qeury参数带上购买商品的数量,这样简洁一点

 思考:我们怎么把detail中详情的数据给到addcartsuccess?

我们利用会话存储来传递数据

但是我们传递的数据是对象形式还是字符串形式呢?答案是字符串形式的,有的朋友不相信,那我在这里给大家验证一下,传递对象会怎么样?

在pages/Detail/index.vue中:

 在pages/AddCartSuccess/index.vue中:

这个组件是拿数据

 控制台查看,我们发现其实拿不到数据

 

 所以本地存储和会话存储不可以存对象,我们要把对象变成字符串存储,拿到字符串以后,我们在转对象

1.在pages/Detail/index.vue中:

把对象转字符串

测试:

 控制台打印的结果也是字符串

  2.在pages/AddCartSuccess/index.vue中:

 

 我们在控制台中可以看到:

数据已经存储在AddCartSuccess中了 

 3.数据放到页面中:

在pages/AddCartSuccess/index.vue中:

 效果:

至此功能实现了

 

这篇关于Vue项目中常见问题(39)路由传递参数结合回话存储的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/178956

相关文章

vue使用docxtemplater导出word

《vue使用docxtemplater导出word》docxtemplater是一种邮件合并工具,以编程方式使用并处理条件、循环,并且可以扩展以插入任何内容,下面我们来看看如何使用docxtempl... 目录docxtemplatervue使用docxtemplater导出word安装常用语法 封装导出方

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

Spring Boot 整合 MyBatis 连接数据库及常见问题

《SpringBoot整合MyBatis连接数据库及常见问题》MyBatis是一个优秀的持久层框架,支持定制化SQL、存储过程以及高级映射,下面详细介绍如何在SpringBoot项目中整合My... 目录一、基本配置1. 添加依赖2. 配置数据库连接二、项目结构三、核心组件实现(示例)1. 实体类2. Ma

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

一文带你了解SpringBoot中启动参数的各种用法

《一文带你了解SpringBoot中启动参数的各种用法》在使用SpringBoot开发应用时,我们通常需要根据不同的环境或特定需求调整启动参数,那么,SpringBoot提供了哪些方式来配置这些启动参... 目录一、启动参数的常见传递方式二、通过命令行参数传递启动参数三、使用 application.pro

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于