您现在的位置: 首页 > 微信营销 > 微信攻略文章 > 微信小程序首页代码:来聊聊小程序页面之间如何通信?

微信小程序首页代码:来聊聊小程序页面之间如何通信?

作者:pc668   来源:  热度:756  时间:2021-07-27
在微信小程序中一般通过navigata或者redirect时候URL来携带参数,然后在目标页面的onLoad函数中获取这些URL参数微信小程序首页代码。例如://A页面相关代码wx.navigateTo({url:"/pages/Apage/Apage?a=1&b=2"})//B页面相关代码Page({onLoad:function(options){var a=options.a;//a的值:1var b=options.b;

在微信小程序中一般通过navigata或者redirect时候URL来携带参数,然后在目标页面的onLoad函数中获取这些URL参数微信小程序首页代码。

例如:

//A页面相关代码

wx.navigateTo({

url:"/pages/Apage/Apage?a=1&b=2"

})

//B页面相关代码

Page({

onLoad:function(options){

var a=options.a;//a的值:1

var b=options.b;//b的值:2

}

})

但这个方法是对于目标文件还没创建时有效,因为一个页面onLoad函数在页面生命周期中,只执行一次。如果是A跳到B,再回到A并把B的数据传回来,就没法实现了。

一、使用全局存储数据

1.将要储存的数据,存储到App对象上(如globalData属性)。

var app=getApp()

app.globalData.mydata={a:1,b:2}//

wx.navigataBack();//返回上一页

2.将要传递的数据,储存在小程序本地数据缓存(Storage)中。

wx.setStorage({

key:"mydata",

data:{a:1,b:2},

success:function(){

wx.navigataBack();//返回上一页

}

})

注:全局数据存储,必须谨慎管理,生命周期等问题

二、从页面路由栈中直接获取和操作目标Page对象

这种方式,是通过调用小程序的API getCurrentPages(),来获取当前页面路由栈信息,这个路由栈是按照页面路由顺序存放着相应的Page对象,可以很容易获得上一页的Page对象,从而使直接调用Page对象的属性和方法成为可能。

var pages=getCurrentPages();

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

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

//现在就可以,直接调用上一个页面的setData()方法,把数据存到上一个页面中去

prevPage.setData({

mydata:{a:1,b:2}

})

微信小程序弹窗自定义实例代码?

wx.showModal({ title: '提示', content: '这是一个模态弹窗', success: function(res) { if (res.confirm) { console.log('用户点击确定') } else if (res.cancel) { console.log('用户点击取消') } } })

微信小程序给了后台接口,前端怎样调用?

1、首先在index.js中想写逻辑代码。

2、其中page里面的data里面是前台展示时的一些数据,而onload里面是调用的接口。

3、调用的方式为get调用,返回的数据存在res里面。

4、返回的数据,而data中就是我们需要的数据。

5、data:一个入参。method:请求方式,如果是POST请求必须按上面写,默认是get请求,不用处理。complete:页面请求完成后的方法,通过that.setData将数据传递给WXML页面。success:页面加载成功后的执行方法。

登录

使用微信帐号或QQ直接登录,无需注册