微信小程序实现页面之前传递参数

假设现在有个业务场景 我们要把test页面里面obj里面的值传递给test2页面,很多人应该会直接拼在url路径后面 或者直接存到内存中localStorage中 那还有没有其他方式呢?

在这里插入图片描述

在utils中下创建一个global.js

let obj = {}

export default {
 read() {
    console.log('read', global);
  },
  set(key, value) {
    global[key] = value
  },
  get(key) {
    return global[key]
  },
  del(key) {
    delete global[key]
  },
  clear(){
    global = {}
  }
}

在app.js中导入

import global from './utils/global'
App({
  global() {
    return global
  }

})
 //html中
  <button bind:tap="toUrl">点我去test2页面</button>
 //js中
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    obj: {
      name: '小明',
      age: '18',
      gender: '男'
    }
  },
  toUrl() {
    //调用刚刚封装的方法 点击跳转将需要的值存储起来
    app.global().set('userObj',this.data.obj)
    wx.navigateTo({
      url: "/pages/test2/test2",
    })
  }

})

test2页面中

const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    obj:{}
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.setData({
      obj: app.global().get('userObj')
    })
    //用完就销毁了哦 可以调用clear 或者 del 我这里就直接clear了
    app.global().clear()
    //在read一下 大功告成!
    app.global().read()
  },
})

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值