微信小程序不同js之间传递数据

news/2024/7/19 13:02:21 标签: 小程序, js

在做小程序时,需要将一个有页面的数据传到另一个页面的js中使用,这里使用的方法就是通过小程序中的app.js存储,然后在另一个js中取出来使用。

将需要使用的变量存储到app.js中。globalData用于存储变量。

this.globalData = {      
    }

在需要存储的js中,将从接口取出的数据存入到globalData中。

success: function (res) {
        console.log(res);
        that.setData({      
          //将接口返回的数据data赋值给data
          data:res.data,     
        })
        app.globalData=res.data;
        //console.log(app.globalData)
             
      },
      fail: function (res) {
        console.log("fail=================")
      },

然后在另一个js页面中取出,先设置app

const app = getApp();

然后在该页面中对取出的数据进行使用。直接使用app.globalData即可。

var temperature=[];
  var date=[];
  for (var i = 0; i < app.globalData.length; ++i) {
    temperature[i]=app.globalData[i].temperature;
    date[i]=app.globalData[i].date;
  }

还有另一种传递值的方法就是通过url加变量传递。

跳转时将数据拼接在URL后面;在另一个页面的onLoad()方法的参数中即可获取到传递的参数。

//first.js
wx.navigateTo({
     url: `../select/select?id=${id}`,
})

//select.js
onLoad(option){
	const id = option.id;
}

如果将对象类型的数据拼接在路径后面,到另一个页面获取时会发现是"[object,object]",无法使用。
解决方法:利用JSON.stringify()和JSON.parse()。

//传递数据的页面
const selectData = JSON.stringify(this.data.selectData);
wx.redirectTo({
   url: `../order/order?selectData=${selectData}`
})

//接收数据的页面
onLoad(option){
	const selectData = JSON.stringify(option.selectData);
}

不同页面之间传递数据主要是这两种方法。


http://www.niftyadmin.cn/n/1727972.html

相关文章

驱动中取NT API函数在SSDT中的服务号

代码:static HANDLE hModuleOfNtdllNULL; PVOID GetFunctionAddress(HMODULE hModule,PCSTR funcName); HANDLE GetNtDllBaseAddr(IN PCWSTR lpModuleNameL"ntdll.dll"); ULONG GetFunctionIndexOfSSDT(PCSTR lpFunctionName);PVOID GetFunctionAddress(HMODULE hM…

话说耳鼻喉之鼻

前戏&#xff1a; 去医院最想听到的结论就是&#xff1a;没什么事&#xff0c;回家休息便好。 大多数人是不喜欢去医院的&#xff0c;因为从风水学的角度来说那个地方煞气太重&#xff0c;其实个人总结重要的因素有一下几点&#xff1a; 1.怕花钱【其实看病为次&#xff0c;卖药…

CListCtrl控件功能扩展总结

文章来源: http://blog.sina.com.cn/s/blog_48f93b530100eg3z.html 前面写过两篇CListCtrl控件的开发总结&#xff0c;最近在开发和应用当中又发现了几个比较有趣的问题&#xff0c;主要是关于自绘滚动条的。从我的感觉来说&#xff0c;做CListCtrl控件&#xff08;我们一直在讨…

算法(Java)——栈、队列、堆

栈 在刷算法题中&#xff0c;栈是一种常用的数据结构。下面介绍一些Java中栈的常用的一些方法以及力扣刷题中用到栈的一些题目。 Java Stack类&#xff0c;栈是Vector的一个子类&#xff0c;实现后进先出的栈。 Stack stackA new Stack();使用Stack类&#xff0c;由于Stack…

asp.net页面触发事件panel滚动条高度不变

此文是为解决asp.net页面按钮点击触发事件后panel滚动条非自动回到顶端的解决方案&#xff0c;对于页面触发一个事件后&#xff0c;panel滚动条重新回到顶端&#xff0c;做下面的工作每次都要往下拉一下&#xff0c;特别是选择TreeView的时候&#xff0c;这个问题非常头疼&…

Windows窗口相关的一些概念解释

最近工作中关于UI开发方面的东西多了些&#xff0c;碰到问题的时候查阅了很多资料&#xff0c;对Windows窗口的一些概念的理解也慢慢深入了很多。在这篇中把一些比较容易混淆和相关资料比较少的概念做一个总结&#xff0c;可能你用到这些概念的几率不大&#xff0c;但是一旦你遇…

算法(Java)——HashMap、HashSet、ArrayList

算法中数据存储经常需要用到的数据结构主要就是HashMap、HashSet、ArrayList。 HashMap 哈希表是由一块地址连续的数组空间构成的&#xff0c;其中每个数组都是一个链表&#xff0c;数组的作用在于快速寻址查找&#xff0c;链表的作用在于快速插入和删除元素&#xff0c;因此…

C# ?问号运算符知多少

总结一下C#中问号有三种 第一&#xff1a;三目操作运算符【 ? : 】 问号前面的是条件&#xff0c;后面的是结果&#xff0c;条件满足返回冒号前面的值否则后面的值 事例 <span style"white-space:pre"> </span>public int WhoBig(int a, int b){retu…