微信小程序页面传值的5种方式

这篇具有很好参考价值的文章主要介绍了微信小程序页面传值的5种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

原生微信小程序页面传值的5种方式

微信小程序页面传值的方式有以下几种:

1.URL参数传值:通过在跳转链接中附加参数,在目标页面的onLoad函数中获取参数。
2.全局变量:通过在app.js文件中定义全局变量,在源页面设置变量的值,目标页面通过getApp().globalData获取变量的值。
3.缓存存储:使用wx.setStorageSync()在源页面设置存储的值,目标页面通过wx.getStorageSync()获取值。
4.路由传参:使用wx.navigateTo()传递参数,目标页面通过options参数获取传递的值。
5.事件触发传参:通过事件绑定,在源页面触发事件传递需要的参数,目标页面通过事件对象获取传递的值。

传值方式的代码示例:

1.URL参数传值:

源页面:

wx.navigateTo({
  url: '/pages/targetPage/targetPage?id=123&name=John'
});

目标页面:

onLoad: function(options) {
  console.log(options.id);   // 输出:123
  console.log(options.name); // 输出:John
}

2.全局变量:

在app.js中定义全局变量:

App({
  globalData: {
    id: null,
    name: ''
  }
});

源页面:

getApp().globalData.id = 123;
getApp().globalData.name = 'John';
wx.navigateTo({
  url: '/pages/targetPage/targetPage'
});

目标页面:

onLoad: function() {
  console.log(getApp().globalData.id);   // 输出:123
  console.log(getApp().globalData.name); // 输出:John
}

3.缓存存储:

源页面:

wx.setStorageSync('id', 123);
wx.setStorageSync('name', 'John');
wx.navigateTo({
  url: '/pages/targetPage/targetPage'
});

目标页面:

onLoad: function() {
  console.log(wx.getStorageSync('id'));   // 输出:123
  console.log(wx.getStorageSync('name')); // 输出:John
}

4.路由传参:

源页面:

wx.navigateTo({
  url: '/pages/targetPage/targetPage?id=123&name=John'
});

目标页面:

onLoad: function(options) {
  console.log(options.id);   // 输出:123
  console.log(options.name); // 输出:John
}

5.事件触发传参:

源页面:

// 源页面的wxml文件中
<button bindtap="navigateToPage" data-id="123" data-name="John">跳转</button>

// 源页面的js文件中
navigateToPage: function(event) {
  wx.navigateTo({
    url: '/pages/targetPage/targetPage'
  });
  var id = event.currentTarget.dataset.id;
  var name = event.currentTarget.dataset.name;
  getApp().globalData.id = id;   // 存入全局变量
  getApp().globalData.name = name; // 存入全局变量
}

目标页面:

onLoad: function() {
  console.log(getApp().globalData.id);   // 输出:123
  console.log(getApp().globalData.name); // 输出:John
}

以上是几种常见的小程序页面传值的方式的代码示例。根据实际需求选择合适的方式进行页面间的传值操作。文章来源地址https://www.toymoban.com/news/detail-616060.html

到了这里,关于微信小程序页面传值的5种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 微信小程序页面传值为对象[Object Object]详解
  • 微信小程序之组件的四种传值方式

             我们可以利用微信小程序提供的本地存储 wx.setStorageSync 与 wx.getStorageSync 进行传值。  传递组件 接收组件 传递组件  接收组件 这时因为传递的是对象类型的数据,到另一个页面获取时会发现是\\\"[object,object]\\\",解决方法是利用JSON.stringify()和JSON.parse() 传递数据的组件

    2024年02月16日
    浏览(12)
  • 微信小程序详细讲解页面传值,globalData,wx,web前端开发基础

    微信小程序详细讲解页面传值,globalData,wx,web前端开发基础

    在其他非app.js文件中修改: var app = getApp() ​ app.globalData.hasLogin = true 二、 使用 wx.navigateTo 与 wx.redirectTo 的时候,可以将部分数据放在 url 里面,并在新页面 onLoad 的时候初始化 // Navigate wx.navigateTo({ url: ‘…/pageD/pageD?name=raymondgender=male’, }) ​ // Redirect wx.redirectTo({ url: ‘…/p

    2024年04月25日
    浏览(10)
  • Axios传值的几种方式

    axios基本使用 默认是get请求 注意:get请求无请求体,可以有body,但是不建议带 使用get方式进行无参请求  使用get方式请求,参数值直接放在路径中    使用get方式请求,参数拼接在路径中:方式①   使用get方式请求,参数拼接在路径中:方式② 使用get方式请求,拼接多个参

    2024年04月17日
    浏览(8)
  • 微信小程序-----刷新页面3种方式

    微信小程序要实现页面刷新,简单的说就是在不同的地方重新执行 onLoad 周期函数。 需要注意在刷新时是否要初始化变量。因为小程序都是异步操作,所以很多时候,可能会造成服务器相应慢的问题,导致页面显示的时候会有延迟、造成闪烁的情况。 1.用 onLoad 周期方法重新

    2024年02月15日
    浏览(13)
  • 微信小程序页面跳转方式+跳转小程序

    官方文档:https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.switchTab.html 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 跳转到其他页面(非tabBar页) 返回上一页面或返回多级页面 首先需要在当前小程序app.json中定义:需要跳转的小程序的app-id app.josn文件: 第一种方法:wx.

    2024年02月12日
    浏览(109)
  • 微信小程序禁止页面上下滑动的三个方式

    开发的时候,会遇到产品或者UI发出如下规定: 1、如果是一屏的页面,就禁止页面能上下滑动 2、如果显示弹窗的时候,长屏幕禁止上下滑动! 感叹一句:好变态 当然,感叹归感叹,但是还是得听不是,我找出了3种方式,看看大家喜欢哪个,就用哪个! 第一种方式: 页面

    2024年02月11日
    浏览(19)
  • 【微信小程序】设置页面背景色的方式

    例如将每个页面的默认背景色设置成灰色: app.wxss: 方式一: 在单独的页面中设置背景色样式 xxx.wxss: 方式二: 单个页面最外层包个 view class=\\\"pageContainer\\\"/ view 作为根容器,来设置样式,给定背景色。 xxx.wxml: xxx.wxss: 注: 页面背景色并不是指 navigationBar 的背景色

    2024年02月13日
    浏览(15)
  • vue3中的组件传值的方式

    1. props 父组件使用 props 传递数据给子组件: 子组件使用 props 接收: 2. emit 自定义事件 子组件触发事件,父组件监听该事件并更新数据: 3. refs 通过 ref 给子组件绑定引用,然后通过该引用直接更新子组件的数据或调用子组件的方法: 在 child 组件中: 4. provide / inject 父组件提供数据

    2024年02月07日
    浏览(10)
  • Flutter框架中,组件间传值的基本方式

    1.构造函数传值 在创建widget时,可以通过构造函数将参数传递给子widget。例如: 2.回调函数传值 父widget可以在创建子widget时,传递一个回调函数,当子widget需要把值传给父widget时,就调用这个回调函数。例如: 3.InheritedWidget传值 InheritedWidget是Flutter框架提供的一种特殊的wid

    2024年02月09日
    浏览(8)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包