小程序this.setData】的更多相关文章

前言: 之前使用 setData,一直都是作为给变量赋值,感觉比起vue给data中的变量的赋值还是有点麻烦的. 最近项目不太紧张,为了提高小程序的开发效率及提升小程序开发的能力,又重新的通读了下小程序的开发文档.发现 setData还有一个非必填的参数 callback——setData引起的界面更新渲染完毕后的回调函数,通过这个回调函数,可以在更新data中的数据的时候,同步在回调函数中进行相应操作,这比更新数据和后续操作分开写好多了. Page.prototype.setData(Obje…
小程序不方便之处: 1: 想做个获取列表中每个item所在的对应滚动条的高度在哪里,或者元素本身的高度也不好获取,极其不方便,网上看的别人做的滚动条相关的,都是写死或者已知的item高度,目前没找到正确的方式,也可能是打开方式不对. 2:当点击某个按钮的时候想要获取当前滚动条的高度位置,不方便,只能在监听滚动条时刻滚动的时候获取最新的值存起来.这样的操作setData太耗费性能,毕竟view model跟js core做交互成本不低. 3:接着上一条,不能监听onPageScrol 滚动条停止滚…
1.定义 setData()函数用于将逻辑层数据发送到视图层,同时对应的改变this.data的值. 2.setData()参数格式 接受一个对象,以键(key)值(value)的方式改变值. 其中,key十分灵活,以数据路径的方式给出 -- array[2].message,a.b.c.d,并且不需要在 this.data 中预先定义. 3.实例 Page({ data: { text: 'init data', array: [{text: 'init data'}], object: {…
在page中有如下数组 data: { info:[ { name:"yuki", tou:"../img/head.jpg", zGong:130, gMoney:222222 }, { name: "yuki", tou: "../img/head.jpg", zGong: 130, gMoney:222222 }, { name: "yuki", tou: "../img/head.jpg&…
data: { isChecked: [ { key: true },{ key: true },{ key: true} ]} 如上,如果我想动态修改isChecked里面指定某个下标的值怎么办? click: function (e) { var id = e.target.id//根据点击不同的view获取对应的id值 var str = "isChecked[" + id + "].key"//重点在这里,组合出一个字符串isChecked可以直接拿到数据,…
在一般的函数中: bindFaChange1: function (e) { console.log('picker发送选择改变,携带值为', e.detail.value) this.setData({ index1: e.detail.value }) } this.setData是正确的. 但当在函数中有个请求(wx.request)时: formSubmit: function (e) { wx.request({ method: 'POST', header: header, url:…
假如现在要给数组marker中的对象属性赋值 data: { marker: [ { latitude: ' ' , longitude: ' ' } ] },   在方法中的写法为   fetchJobInfor ( ) { let  lat = 'marker[0].latitude' let  lon = 'marker[0].longitude' this.setData({ [lat]:  ' 赋值1 ', [lon]: ' 赋值2 ' }) }…
比如data{ “a”:{}, "b":{} } 你想完成这样的结构 //创建一个对象 var readyData={} //对象[key] =另一个对象 readyData[key] ={ movies: movies, movieType: movieType } this.setData(readyData) if else if else…
原创文章 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…
page({ data:{ s1:{a:"",b:"b"} }, changeData:function(e){ var cData=this.data.s1; cData.a="1";//先修改json值 this.setData({ //再set值 s1:cData }) } })…