zoukankan      html  css  js  c++  java
  • 微信小程序传值的几种方式

    第一种:通过链接传值(跳转页面传值)

    index.wxml

    <view>{{ msg }}</view>
    <button bindtap="clickMe">点击我</button>
     
    clickMe: function () {//点击事件
    wx.navigateTo({
    url: '../1111?id=1'//传值
    })
    this.setData({ msg: "Hello World" })
    },
    跳传页面接受值
    onLoad: function (options) {
    console.log('query',options)
    },
    第二种方式  data-*  ||  id(适合在本页面传值)
     
     
     
    <button bindtap="clickMe" data-id='{{key}}'>点击我</button>//当然key在data中必须有值
    <button bindtap="clickMe" id='{{key}}'>点击我</button>
     
     
    var id = e.currentTarget.id;
    var id = e.currentTarget.dataset.id;
    console.log(id)

    通过使用data - xxxx 的方法标识来传值

    通过使用data - xxxx 的方法标识来传值,xxxx可以自定义取名 比my.wxml中的data-index。

    如何获取data-xxxx传递的值?
    在js的bindtap的响应事件中:
    通过数据解析一层层找到数据,var id=e.target.dataset.index(根据你的data-id的取名)

    如js中的两个打印就是通过两种不同方式获得的id。

    第三种方式本地存储(和第四种一样都是可以全局使用的)

    wx.setStorage({
      key:"key",
      data:"value"
    })

    wx.setStorage({
    key: "key",
    data: "很多的数据"
    })
     
     
    第4中方式全局app对象
    const app = getApp()
    app.datakey='sks';
     
    const app = getApp()
    var sks = app.datakey;
    console.log(sks)
    最后添加一种方式是跳转路由,由于本人记性差所以mark
    1 goabout :function(){
    2       this.$router.push({
    3                  path:'/home/first'
    4                 })
    5 
    6     }
  • 相关阅读:
    mongo admin 客户端管理工具安装
    kong API gateway
    安装 docker管理 工具 页面 portainer
    elcipse 安装lombok插件解决 @Slf4j 等找不到log变量问题
    cqrs案例
    你还不知道这四点Mysql调优的话,那就赶快学起来
    python中的类型提示(type hint)
    大厂面试最常被问的Redis问题合集
    nginx gzip json [2]
    nginx gzip json 配置「1」
  • 原文地址:https://www.cnblogs.com/lujunan/p/10062446.html
Copyright © 2011-2022 走看看