微信小程序页面传参长度问题

需求:a页面传递参数到b页面,传递的参数是一个对象,需要进行json转换,但在小程序中传递的参数长度是有限制的,因此我们传递的时候可以,但是接收的时候,往往会被自动截取掉超出的部分,从而达不到我们想要的效果,这就需要对传递的数据进行处理;

解决:

a页面:

复制代码
// 查看教练个人信息
	function getTrainerInfo(item) {
		const info = encodeURIComponent(JSON.stringify(item))
		uni.navigateTo({
			url: `/pages/trainerInfo/trainerInfo?info=${info}`
		})
	}

b页面:

复制代码
	onLoad((options) => {
		info.value = JSON.parse(decodeURIComponent(options.info))
		console.log('info.value', info.value);
	})

总的来说就是对传输的数据进行编码,以确保特殊字符在URL中安全传输**。**‌该函数会将除了字母、数字、连词号(-)、下划线(_)、点(.)、感叹号(!)、波浪线(~)、星号(*)、单引号(')、圆括号(())之外的所有字符进行转码,将其转换为百分号(%)后跟随的两个十六进制数表示的形式。这样处理后的字符串可以确保在URL中不会被解释为特殊字符,从而避免参数传递错误或URL解析问题‌

相关推荐
万岳科技系统开发5 小时前
私域直播小程序源码的整体架构设计与实现思路
学习·小程序
ee82ee5 小时前
uniapp小程序底部键盘唤起问题处理,包含间隙处理,动画处理
微信小程序
qq_12498707536 小时前
基于springboot健康养老APP的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·mysql·微信小程序·毕业设计
汤姆yu6 小时前
基于微信小程序的驾校预约与学习系统
学习·小程序·驾校预约
夏源7 小时前
【微信小程序】实现引入 Echarts 并实现更新数据
微信小程序
speedoooo7 小时前
未来的App不再需要菜单栏?
前端·ui·容器·小程序·web app
猿究院_xyz8 小时前
微信小程序与echarts联动安卓真机测试出现黑色阴影
前端·javascript·微信小程序·小程序·echarts
说私域9 小时前
不同类型企业构建私域流量的必要性及定制开发AI智能名片商城小程序的应用
大数据·人工智能·小程序
老华带你飞10 小时前
健身房预约|基于springboot 健身房预约小程序系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·小程序
2501_9159090610 小时前
苹果应用加密方案的一种方法,在没有源码的前提下,如何处理 IPA 的安全问题
android·安全·ios·小程序·uni-app·iphone·webview