微信小程序 跳转界面,选择货物之后,返回上一页带参数并判断参数是否存在

news/2024/11/14 14:17:18/

需求

当刚进来时选择货物,跳转到选择货物界面进行货物选择,如果货物重复,不再新增货物,如果不存在,则新增

prevPage.setData()用于在页面之间传递数据。它将数据设置到上一个页面(即prevPage)的data对象中,然后可以在上一个页面中通过data属性访问该数据。这种方式适用于在页面之间传递少量数据。

wx.setStorage和wx.setStorageSync用于在本地存储中保存数据。它们可以将数据存储在微信小程序的本地缓存中,以便在小程序的不同页面中进行读取和使用。这种方式适用于需要在不同页面之间长期存储数据的情况。

选择货物

选择货物
选择货物

选择完毕之后

选择完毕之后

// main.js/*** 上一个页面的初始数据*/data: {addGoods: [],}/*** 生命周期函数--监听页面显示*/onShow() {let that = this;// 选择了产品信息if (that.data.addGoods && that.data.goods.length == 0) {that.setData({goods: that.data.addGoods})} else if (that.data.addGoods.length > 0 && that.data.goods.length > 0) {for (let j = 0; j < that.data.addGoods.length; j++) {// 检查新数组中是否已经包含具有相同id的对象let existingElement = that.data.goods.find(item => item.id === that.data.addGoods[j].id);if (!existingElement) {that.data.goods.push(that.data.addGoods[j]);}}that.setData({goods:that.data.goods})}},     
   //child.js 在需要进行传值的地方进行setDatalet pages = getCurrentPages(); // 获取页面栈  好处在于 刷新比缓存及时let currPage = pages[pages.length - 1]; // 当前页面let prevPage = pages[pages.length - 2]; // 上一个页面prevPage.setData({// 要设置的值addGoods: arr})

注意:在使用setData()方法传递数据给父页面时,需要保证父页面已经加载完成,否则可能会出现数据传递不成功的情况。


http://www.ppmy.cn/news/1261319.html

相关文章

如何在报表工具 FastReport Cloud 中使用 ClickHouse

FastReport Cloud 是一项云服务 (SaaS)&#xff0c;旨在为您的企业存储、编辑、构建和发送报告。您的整个团队可以从世界任何地方访问这些报告&#xff0c;并且无需创建自己的应用程序。 FastReport Cloud 试用&#xff08;qun&#xff1a;585577353&#xff09;https://chat8.…

你了解架构图吗?

技术界的扛把子架构图&#xff0c;你了解吗&#xff1f;今天我们就来聊聊它 什么是架构图呢&#xff1f; 系统架构是概念的体现&#xff0c;是对物/信息的功能与形式元素之间的对应情况所做的分配&#xff0c;是对元素之间的关系以及元素同周边环境之间的关系所做的定义。 架构…

学习IO的第五天

作业 &#xff1a;使用两个线程完成文件的拷贝写入&#xff0c;分线程1写入前半段&#xff0c;分线程2写入后半段&#xff0c;主线程用来回收资源 #include <head.h>void *sork(void *arg); void *sork2(void *arg);int file_copy(int start,int len) //拷贝的函数 {i…

分数到小数

题目链接 分数到小数 题目描述 注意点 denominator ! 0对于所有给定的输入&#xff0c;保证 答案字符串的长度小于 10000如果小数部分为循环小数&#xff0c;则将循环的部分括在括号内 解答思路 本题关键是要找到循环小数的部分并将其两侧加上括号&#xff0c;模拟除法运算…

Echarts运用之饼状图常见问题及案例代码

前言 ECharts 是一个使用 JavaScript 实现的开源可视化库,它可以帮助用户以简单的方式创建复杂的时间序列、条形图、饼图、地图等图形。 初学者,可参考下我的另外两篇文章,从基础到深入,解读饼状图的运用。 ECharts初始案例(入门) ECharts之饼图 常见问题及案例代码 数…

数据清洗、特征工程和数据可视化、数据挖掘与建模的主要内容

1.4 数据清洗、特征工程和数据可视化、数据挖掘与建模的内容 视频为《Python数据科学应用从入门到精通》张甜 杨维忠 清华大学出版社一书的随书赠送视频讲解1.4节内容。本书已正式出版上市&#xff0c;当当、京东、淘宝等平台热销中&#xff0c;搜索书名即可。内容涵盖数据科学…

人脸识别安卓主板_MTK方案智能闸机门禁工业安卓主板定制开发

人脸识别主板广泛应用于各个领域&#xff0c;包括人脸支付系统、人脸识别监控系统、写字楼办公楼门禁闸机、校园、地铁、住宅门禁、考勤机、智能门锁、广告机、售卖机等。 主板基于联发科MTK方案&#xff0c;并由行业PCBA和MTK的核心板组成。根据产品需求&#xff0c;可以选择…

node.js出现version `GLIBC_2.27‘ not found的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…