微信小程序页面传值

来源:互联网 发布:软件生存周期模型 编辑:程序博客网 时间:2024/05/16 10:42

微信小程序,最近发展也是不温不火,但是我们作为开发者, 该解决的问题依然得去解决。在小程序的开发过程中,很多时候,我们需要去跨页面传值,由于小程序没有app的对象属性机制,所以对于小程序的传值取值,我觉得大概有三种,一是通过全局变量取值,二是URL参数传值,三则是通过form表单提交。


对于全局变量传值,其实也很简单,在小程序中,我们可以通过var app = getApp(),获取到全局变量app,然后对app赋值,如app.getId='18996759675',然后这个app.getId='18996759675'相当于已经存在于全局,

var app = getApp()
app.getId='18996759675';


在要使用的地方,通过getApp().getId即可取到之前需要传递的appleid值。

phone:getApp().getId,




URL参数传值的话,从上一个页面中传递某一个参数到编辑页面,以读取数据供填充之用:

<view class="container"data-index="{{index}}"bindtap="edit"><image src="../../../images/icon_edit.png"/><text>编辑</text></view>
 
edit:function(e) {
  varthat = this;
  // 取得下标
  varindex = parseInt(e.currentTarget.dataset.index);
  // 取出id值
  varobjectId = this.data.addressObjects[index].get('objectId');
  wx.navigateTo({
    url:'../add/add?objectId='+objectId
  });
},



在读取页面实现onLoad(options)方法,从url路径中获取传递的参数值objectId.

onLoad:function(options) {
  varobjectId = options.objectId
}


表单提交传值则与前端网页类似,在网页中通过form传递表单值,在小程序中,通过<form bindsubmit="formSubmit">与<button formType="submit">标签配合使用

<form bindsubmit="formSubmit">
  <input name="detail"placeholder="详情地址"/>
  <input name="realname"placeholder="收件人姓名"/>
  <input name="mobile"placeholder="手机号码"type="number"/>
  <button formType="submit"type="primary">Submit</button>
</form>



js取值:

formSubmit:function(e) {
  // detail
  vardetail = e.detail.value.detail;
  // realname
  varrealname = e.detail.value.realname;
  // mobile
  varmobile = e.detail.value.mobile;
}




对于表单提交,还可以通过<input bindconfirm="realnameConfirm">实现:

// 实现相应多个**Confirm方式
detailConfirm:function(e) {
  vardetail = e.detail.value;
}
realnameConfirm:function(e) {
  varrealname = e.detail.value;
}
mobileConfirm:function(e) {
  varmobile = e.detail.value;
}


0 0
原创粉丝点击