微信小程序之两个页面传值

需求:发送页面通过url传值,接收页面获取值。

发送页面的js

var nowid='10';
wx.navigateTo({
    url: '../index/index?id='+nowid,
})

 或者发送页面用navigate 组件:
<navigate  url="xxx?id=10"></navigate >

如果id是page里面data的数据。是动态的,那么可以写成:

<navigate  url="xxx?id={{pid}}"></navigate >

这种方式也是通过接收页面的onload来获取id的

 

接收页面的js

在接收页面onload的函数里就可以获取到值

onLoad: function (options) {
    var _obj=options.id;        
    console.log(_obj)
}

(1) 接收页面获取到的 options 就是发送页面的 url问号后面传过来的值

(2) 如果传过来的值是一个json对象,那么需要现在发送页面把这个对象JSON.Stringfy转化成字符串,然后 接收页面 再使用JSON.parse转化成json对象就行。

 

还有种方法是通过小程序的本地存储   wx.setStorage()等API接口来实现-----》发送页面存入,接收页面在接受。当然,不需要的时候可以把存入的数据删掉

 

还有一种方式就是:在app.js中设置数据,然后其它页面在需要的时候,就可以通过  app.数据等形式来获取。当然,需要在接收数据的页面声明  var app=getApp();

posted @ 2017-12-21 12:35  站住,别跑  阅读(3817)  评论(0编辑  收藏  举报