zoukankan      html  css  js  c++  java
  • 小程序页面间传值

    先说一下正向传值:

    1.url传值:

     通过url传值的需要通过option来获取参数值。

     更多详情可以访问小程序-navigateTo章节

     A页面:

    wx.navigateTo({
      url: 'test?id=1'
    })

    B页面:

    复制代码
    Page({
      data:{
        id:'',
      },
      onLoad: function(option){
        this.setData({
          id:option.id
        })
      }
    })
    复制代码

    2.本地存储:

    关于缓存,可以先访问小程序-数据缓存稍作了解。

    A页面:

    wx.setStorageSync('username', 'ddd')

    B页面:

    复制代码
    Page({
      data:{
        username:'',
      },
      onLoad: function(){
       var username = wx.getStorageSync('username')
       this.setData({
           username: username
        })
      }
    })
    复制代码

    3.全局的app对象

    关于app对象,可以访问小程序-注册程序了解相关信息。

    A页面:

    var app = getApp();
    app.username='ddd';

    B页面:

    var app = getApp();
    var username = app.username;

    再说一下反向传值,看了上面那几种方法,聪明的你应该知道反向传值有哪几种方式了。对,就是方法2和方法3:

    1.本地存储:

    B页面:

    wx.setStorageSync('username', 'ddd');
    //返回上一页
    wx.navigateBack();

    A页面:

    复制代码
    Page({
      data:{
        username:'',
      },
      onShow: function(){
       var username = wx.getStorageSync('username')
       this.setData({
           username: username
        })
      }
    })
    复制代码

    2.全局的app对象

    B页面:

    var app = getApp();
    app.username='ddd';

    A页面:

    复制代码
    var app = getApp(); 
    
    Page({
      data:{
        username:'',
      },
      onShow: function(){
       var username = app.username;
       this.setData({
           username: username
        })
      }
    })
    复制代码

    3.在当前页通过获取前一个 page 实例,再赋值

    复制代码
    var pages = getCurrentPages();
    var currPage = pages[pages.length - 1];   //当前页面
    var prevPage = pages[pages.length - 2];  //上一个页面
    //直接调用上一个页面的 setData() 方法,把数据存到上一个页面中去
    prevPage.setData({
      mdata:1 
    })
    复制代码

    这种方法的弊端:因为进入 B 页面的入口可能是很多个。这样做,可能会导致获取到的页面实例不正确。

  • 相关阅读:
    python的整除,除法和取模对比
    jq禁用双击事件
    jq判断滑动方向
    jq获取下拉框中的value值
    html字符串转换成纯文字
    内层div相对于外层div水平垂直居中以及外层div相对body水平垂直居中
    python获取用户输入
    js判断浏览器是否支持localStorage
    CLR的执行模型
    行人检测2(行人检测的发展历史)
  • 原文地址:https://www.cnblogs.com/xiaozhang666/p/11690229.html
Copyright © 2011-2022 走看看