小程序navigateback传值_微信小程序页面之间传参问题:wx.navigateBack返回上一页面如何传参?JS如何通过url传递并接收json类型参数?...

微信小程序页面之间传参问题:wx.navigateBack返回上一页面如何传参?JS如何通过url传递并接收json类型参数?

前言

一、返回前一页面并传参

二、URL传参

1. url传递json类型数据

2. 获取数据

前言

页面之间传参安全性不强,但有时对于无需加密的数据这种传输方式难以避免。首先对于具有前后关系的页面,如何在后一个页面交互属性改变之后返回的上一级页面也跟着改变?其次,在需要跳转页面的场景中,如果需要传的参数是一个json类型,该如何传参和接收参数呢?

一、返回前一页面并传参

在小程序中所有页面的路由全部由框架进行管理,框架以栈的形式维护了当前的所有页面,就是我们所说的页面栈。如果直接采用路由切换的方式,页面栈中会存在旧的页面,当用户点击返回,仍然是旧的数据,并且用户体验很差。

可以通过getCurrentPages()函数获取页面栈的实例,该函数返回值以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。直接调用上一个页面对象的setData()方法,把数据存到上一个页面中去。

var pages = getCurrentPages();

var currPage = pages[pages.length - 1]; //当前页面

var prevPage = pages[pages.length - 2]; //上一个页面

// 调用上一个页面对象的setData()方法,把数据存到上一个页面中去

prevPage.setData({

data:data

});

// 返回上一个页面

wx.navigateBack({

delta: -1

});

这样的话在用户与后一个页面交互之后,再返回前一个页面,展示的是更新之后的值。

二、URL传参

1. url传递json类型数据

先将json对象转换为字符串再进行编码。

var url = encodeURIComponent(JSON.stringify(data))

2. 获取数据

新页面先将url解码之后,再转换为json等格式

onLoad: function (options) {

let data = JSON.parse(decodeURIComponent(options.data))

}

这样就可以在页面之间传递json、object等类型数据了,但注意这种方式传参不安全,只用于安全值低的数据传输。

微信小程序页面传参有需要欢迎补充和指正~。

微信小程序页面之间传参问题wx.navigateBack返回页面如何传参JS如何通过url传递接收json类型参数 微信小程序页面之间传参问题wx.navigateBack返回页面如何传参JS如何通过url传递接收json类型参数?前言返回页面传参二、URL传参1. url传递json类型数据2. 获取数据 前言 页面之间传参安全性不强,但有时对于无需加密的数据这种输方式难以避免。首先对于具有前后关系的页面,如何在后页面交互属性改变之后返回的上页面也跟着改变?其次,在需要跳转页面的场景中,如果需要参数json类型,该如何传参接收参数呢? 返回页面传参小程序中所有页 阅读详情

相关推荐

从原理到实战:深度解析微信小程序页面栈与路由跳转

本文深度解析微信小程序页面栈与路由跳转机制,详细讲解wx.navigateTo、wx.redirectTo等五大路由API的使用场景与性能差异。通过实战案例展示页面栈溢出、返回逻辑混乱等常见问题的解决方案,提供企业级开发中的路由拦截器、页面预加载等进阶技巧,帮助开发者优化小程序性能与用户体验。

weixin_33782386的博客 344

vue、html使用iframe互引交互实现

在子页面添加window.parent.postMessage('TO_LOGIN', '*')分发消息, 在父页面添加监听window.addEventListener('message', (eve) => {})接收 window.parent.postMessage('PARAMS', '*') window.addEventListener('message', (eve) => { console.log(eve.data) }) 子页面调用父页面.

qq_23282331的博客 533

反制反心理特征的研究

抓牛股

m0_58032574的博客 888

uniapp小程序路由跳转,使用uni.navigateBack方法,实现跳转传参

uniapp小程序路由跳转,使用uni.navigateBack方法,实现跳转传参

m0_47791238的博客 5495

Vue中使用iframe加载HTML文件

Vue中使用iframe 嵌入HTML 页面

m0_57996540的博客 5871

uni.navigateBack()返回传递参数

需求:当点击A页面按钮返回的时候,需要把参数传递给上页面(B页面) 般可以用两种方法: 1.使用A页面原有的方法 // B页面传递: let pages = getCurrentPages(); let prevPage = pages[pages.length - 2]; //上页面 let object={ name:"我们都有个家,名字叫中国", age:"上下五千年", } prevPage.onShow(object); uni.navigateBack

棠樾的博客 4960

微信小程序web-view与H5交互:监听H5向小程序postMessage

我们都知道web-view 向H5只需在url里带过去参数就好,但是H5要向小程序时却颇有问题是postMessage不能被实时监控,导致小程序内不能实时拿到H5发来的; 二是页面跳转时的正向和反向。 首先是postMessage的实时监控问题,微信官方说只有在特定时机(小程序后退、组件销毁、分享)触发收到消息,显然是不实用的,那么我们只能变相解决。 1、如果是要接收...

txz_gray的博客 8236

小程序怎么传参到上

微信小程序页面之间参数传递

小天才程序员的博客乐园 8706

微信小程序路由跳转全解析:五大API核心原理与实战避坑指南

在单页应用(SPA)开发中,路由管理是构建流畅用户体验的核心技术。其原理在于通过维护页面栈(Page Stack)数据结构,以“后进先出”(LIFO)的方式控制视图的切换与历史记录。良好的路由设计不仅能实现无缝的页面跳转,更能有效管理应用状态、优化内存使用,确保符合用户操作直觉。在微信小程序开发实践中,路由系统通过五个核心API(wx.navigateTo、wx.redirectTo、wx.switchTab、wx.reLaunch、wx.navigateBack)将这原理工程化。例如,`wx.na

weixin_30254435的博客 400

微信小程序Webview深度解析:从原理到实战避坑指南

在移动端混合开发领域,Webview技术是实现原生应用与Web内容融合的关键桥梁。其核心原理在于通过原生组件容器加载渲染H5页面,实现跨平台代码复用与动态内容承载。这项技术的核心价在于平衡开发效率与用户体验,尤其在快速复用成熟H5业务、集成特定Web SDK等场景中具有不可替代性。然而,其通信机制、性能表现与平台限制也带来了显著的工程挑战。本文聚焦于微信小程序中的Webview组件,深入剖析其与H5页面的双向通信机制、性能优化策略及常见问题排查方案,旨在帮助开发者掌握在复杂业务场景下,如何高效、稳定地运

CSDN头条 475

微信小程序开发实战指南:从零到构建你的第个应用

本文详细介绍了微信小程序开发的完整流程,从零开始搭建开发环境到最终发布上线。内容涵盖项目结构解析、WXML与WXSS使用技巧、JavaScript逻辑层开发、组件化实践、数据绑定与事件处理、页面路由导航、生命周期管理、网络请求与数据缓存等核心知识点,帮助开发者快速掌握微信小程序开发技能,构建高效实用的应用程序。

weixin_30425949的博客 375

微信小程序(事件系统-wxml语法-生命周期-小程序API)

本文摘要: 微信小程序开发全攻略涵盖核心知识点: 基础组件:button按钮类型(default/primary/warn)及事件绑定方式(bind/catch/mut-bind) 数据交互:Mustache语法数据绑定、setData更新规则(对象/数组操作技巧) 生命周期:App/Page/Component三级生命周期执行顺序及场景应用 路由系统:5种导航方式对比(navigateTo/redirectTo/switchTab/reLaunch/navigateBack) 网络请求:wx.reques

2501_93485775的博客 238

微信小程序混合开发实战:Uni-App与原生代码融合架构与通信方案

混合开发是种结合跨端框架与原生代码优势的架构模式,旨在解决单技术栈无法满足复杂业务需求的痛点。其核心原理是在统工程内,通过主从架构实现不同技术栈的代码隔离与协同,利用事件总线、URL参数和本地存储等机制建立通信桥梁。这种模式的技术价在于平衡开发效率与性能体验,既能利用Vue等框架的跨端能力快速构建主体业务,又能在需要极致性能或调用独家原生API时无缝切入原生代码。在微信小程序生态中,当项目需集成特定原生组件、高性能动画或仅支持原生环境的第三方SDK时,混合开发成为关键解决方案。本文聚焦于Uni-Ap

weixin_34226706的博客 507

(八)vue使用iframe嵌入网页

1、列表页面: this.$router.push({ name: 'userTemplate', params: { reportUrl: reportUrl, reportType: reportType }}) 点击查看后触发事件,带入参数跳转到userTemplate页面;reportType有两种类型,0表示reportUrl是绝对网址,1表示reportUrl是本...

w_t_y_y的博客 3万+

wx.navigateBack()函数返回传参

wx.navigateBack()函数返回传参

h_未来可期_的博客 4129

在uniapp中使⽤uni.navigateBack(OBJECT)传递参数

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 在uniapp中使⽤uni.navigateBack(OBJECT)传递参数在uniapp中使⽤uni.navigateBack(OBJECT)传递参数、使用前需了解的知识uni-app中的 **[getCurrentPages()](https://uniapp.dcloud.io/api/window/window.html#getcurrentpages)** 函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第个元素.

weixin_45344910的博客 3231

uni.navigateBack() 返回上级页面传参

在A页面中通过跳转到B页面,在B页面中处理的数据,需要跳转回A页面供其使用。在A页面中使用刚刚绑定的getList()方法,来接收B页面传递的数据。

weixin_48596030的博客 2456

uni.navigateBack传参方式

uni.navigateBack传参方式

--= 1282

wx.navigateBack()返回页面如何传参数?

wx.navigateBack()不能像其他导航样通过url传参,因此只能使用其他方法: 先说两个可以实现但弊端很大的方法: 1、将数据存到app.globalData中,然后返回页面从全局数据中获取         弊端:数据为全局数据,必须谨慎维护,否则全局某处做出修改,牵发而动全身 2、将数据存到本地缓存中(localStorage),然后从缓存中获取           ...

ShiYadong的专栏 2万+

【DRAM存储器六十七】DDR5介绍--训练相关之write leveling

详述DDR5 write leveling细节

highman110的博客 218

中国地级市CO2排放数据(2000-2024年)

碳排放数据是衡量地方经济发展与环境可持续性的重要指标。碳排放数据通常包括二氧化碳排放量,来源包括能源消耗以及工业、交通、建筑等领域的排放。由于中国地理辽阔、经济发展不平衡,各地的碳排放水平差异较大基于全球大气研究排放数据库(EDGAR)CO2排放数据,采用2024年中国省市县三级行政区划矢量数据(GS(2024)0650),解析出我国地级市CO2排放数据相关数据:中国省/市/县CO2排放数据、数据介绍数据名称:中国地级市CO2排放数据数据范围:297地级市时间范围:2000-2024年样本数量:7426条数据来源:全球大气研究排放数据库(EDGAR)更新时间:2026年4月二、数据指标年份省份城市省份代码城市代码所属地域胡焕庸线CO2排放总量

上一篇: 里阿诺德天光渲染隐藏_【扮家家云渲染图文教程】Vray影响渲染效果图速度的因素有.........
下一篇: mybatis 不生效 参数_MyBatis参数使用@Param注解获取不到自增id问题
Amy青梅
博客等级 码龄8年 39粉丝 1706原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值