微信小程序不同页面间传指、前端传值

前端传值

Page({
 data: {
  test01: 1,
  test02: 2
 },
 testfun: function() {
  var that = this;
  if (this.data.test01 == 1) {
   that.setData({
    test02:8
   })
   console.log(this.data.test02)
  }
 },
 onLoad: function() {},
})
 <view class="numview">test01======={{test01}}</view>
 <view class="numview">test02======={{test02}}</view>
 <button bindtap="testfun">测试</button>

页面之间三种传值方式

第一种:url传值

A页面部分js代码

Page({
  jumpPage(e) {
    var zhi = 'biubiubiu~~';
    wx.navigateTo({
      url: '/pages/detail/detail?zhi =' + zhi,
    }
})

B页面部分js代码

Page({
  /**
    * onLoad生命周期函数--监听页面加载
    */
  onLoad(options) {
    console.log(options); // {zhi: 'biubiubiu~~'}
  },
})

第二种:将值缓存在本地,再从本地取值
A页面部分js代码

Page({
  jumpPage(e) {
    var zhi = "biubiubiu~~";
    wx.setStorageSync("zhi", zhi);//同步
    wx.navigateTo({
      url: '/pages/detail/detail', //这儿url不用带值了
    })
  }
})

B页面部分js代码

Page({
	/**
   	* onLoad生命周期函数--监听页面加载
   	*/
  onLoad(options) {
    var zhi = wx.getStorageSync("zhi");
    console.log(zhi); //biubiubiu~~
  },
})

本地缓存,不要超过10M大小,所以高清图片、视频、音频就不通过本地缓存传值了。

第三种:全局传值
app.js页面代码

App({
  globalData: {
    mockData: '模拟数据'
  }
})

其他页面js代码

const app = getApp();
Page({
  onLoad: function (options) {
  	// 获取globalData里面mockData的值
  	const mockData = app.globalData.mockData;
  	console.log(mockData); // 模拟数据
	
	// 重新赋值
	app.globalData.mockData = '重新赋值';
  }
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿巴资源站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值