微信小程序 this.setData() 详解

1、定义

  setData()函数用于将逻辑层数据发送到视图层,同时对应的改变this.data的值。

2、setData()参数格式

  接受一个对象,以键(key)值(value)的方式改变值。

  其中,key十分灵活,以数据路径的方式给出 -- array[2].messagea.b.c.d,并且不需要在 this.data 中预先定义。

3、实例

Page({
  data: {
    text: ‘init data‘,
    array: [{text: ‘init data‘}],
    object: {
      text: ‘init data‘
    }
  },
  changeText: function() {
    this.data.text = ‘changed data‘  //这是错误的,因为在JavaScript中this代表当前对象,会随着程序的执行而上下改变--解决办法看下面<1,<2
   <1 var that=this; //复制一份this到临时变量that中
    this.setData({ //此时OK
      text: ‘changed data‘
    })
  <2 函数名:res=> {
    this.setData({ //此时OK
      text: ‘changed data‘
    })
  }
  }

  

 

时间: 2024-10-24 23:09:34

微信小程序 this.setData() 详解的相关文章

微信小程序 授权登录详解(附完整源码)

一.前言 由于微信官方修改了 getUserInfo 接口,所以现在无法实现一进入微信小程序就弹出授权窗口,只能通过 button 去触发. 官方连接:https://developers.weixin.qq.com/community/develop/doc/0000a26e1aca6012e896a517556c01 二.实现思路 自己写一个微信授权登录页面让用户实现点击的功能,也就是实现了通过 button 组件去触发 getUserInof 接口.在用户进入微信小程序的时候,判断用户是否

微信小程序的配置详解

1.配置详解: 使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设置网络超时时间.设置多 tab 等. 1>pages 接受一个数组,每一项都是字符串,来指定小程序由哪些页面组成.每一项代表对应页面的[路径+文件名]信息,数组的第一项代表小程序的初始页面.小程序中新增/减少页面,都需要对 pages 数组进行修改. 文件名不需要写文件后缀,因为框架会自动去寻找路径.json,.js,.wxml,.wxss的四个文件进行整合. 2>window 用于设置小程序的

微信小程序页面传值详解

我们知道,在微信小程序中,从一个页面转到另一个页面,一般情况下可以通过navigate或redirect时候的url来携带参数,然后在目标页面的onLoad函数参数中获取这些url参数.例如: // 源页面A相关代码   wx.navigateTo({   url: "/pages/mypage/mypage?a=1&b=2"   })     // 目标页面B相关代码   Page({   onLoad: function (options) {   var a = opti

微信小程序要调数据 微信小程序 for 循环详解

现在要完成这样的效果: 我的代码是: <view class="l-setlist clr" > <template name="listab"> <image src="{{pic}}" class="fl setpic"></image> <view class="fr"> <view class="listbox"&

微信支付之扫码、APP、小程序支付接入详解

做电商平台的小伙伴都知道,支付服务是必不可少的一部分,今天我们开始就说说支付服务的接入及实现.目前在国内,几乎90%中小公司的支付系统都离不开微信支付和支付宝支付.那么大家要思考了,为什么微信支付和支付宝支付能作为大多数公司接入的首选呢?其实这个问题大多小伙伴应该是很清楚的,说白了就是人家有庞大的用户流量,目前微信在国内的用户已突破10亿,支付宝也接近8亿左右,如此庞大的用户群体,你还会选择其他的第三方支付(微博钱包.财付通.快钱等)吗,作为普通客户,大家都希望能方便快捷,谁会为了在一个平台买点

微信小程序的setData

由于微信小程序诞生于vue.js和react.js之后,所以他们在当初设计代码架构的时候也是借鉴了vue.js和react.js的想法,也遵循的组件化的方式,延用了setData的机制去把视图层和逻辑层做一个“中转站”两边连接起来.但是这种机制一直存在性能上的问题,微信小程序也不例外.先看一张图: 这张图大体描述了一下setData的工作原理,当程序开始触发setData操作的时候,先把数据做成字符串形式传递,同时把转换后的数据拼接成js脚本形式,接下来这个js脚本都被2边提供的evaluate

共享链模式开发小程序app系统详解

使用会员卡进行促销方法来说是现代商家最为常见的促销手段,很多都使用返利的信息或是换购的措施来刺激消费,作为商业财务来说,用会员卡积分购物后如何记入账务? 我们所说的会员卡的积分通常来说是一种收入的确认方法,比如:会员购买了1000元左右的东西,那么这个消费者的积分就可以领取50元,实际上来看,这个会员消费者实际上就是给商家950元钱就可以进行消费支出了,而商场在开出发票时,不能够按1000元来开,而是按照950元来进行开取发票,也就是商业折扣的费用是50元,这样企业能够少交纳50元的税款,实际上

微信小程序中用setData修改一个对象的属性值

1. Page({    data: {      items:{ //items为一个对象,is_like和like分别为其两个属性     is_like: 0,    like: 0  } }, likes: function () { var is_like ="items.is_like"; //先用一个变量,把items.is_like用字符串拼接起来 var like = "items.like"; if (this.data.items.is_lik

微信小程序-视频教程-百度云-下载

微信小程序-视频教程-百度云-下载 什么是微信小程序?小程序是一种不需要下载安装即可使用的应用,它实现了应用「触手可及」的梦想,用户扫一扫或搜一下即可打开应用.也体现了「用完即走」的理念,用户不用关心是否安装太多应用的问题.应用将无处不在,随时可用,但又无需安装卸载. 为什么要学微信小程序?比 NativeApp 简单.比 WebApp 性能稳定.未来商业价值高.如果你是一名前端,那么未来小程序会是你另一个战场:如果你不是BAT,善用微信小程序开发将给你带来流量和用户:如果你是业内大V,新的研究