微信小程序之setData()关于this的小问题
注:微信小程序没有修改后自动保存功能,所以每次修改后记得保存(Ctrl+S),否则会报错
this.setData(key,value)是当前对象把value赋值给key
btnclick: function () { // console.log(this.data.express) var thispage=this; //在最开始先把最初的this对象保存一份给thispage,this只想当前页面,如果包含更深层次,this就指不到外面去了 app.getexpressinfo(this.data.express, function (data) { console.log(data) thispage.setData({view:data}) }); }, input: function (e) { this.setData({ express: e.detail.value }) }
btnclick方法中第一次this指向了api接口对象(调用getexpressinfo函数),返回获取的值,然后又通过this把值赋给外层的view,所以会产生指意不明,因此,先把外层的当前对象复制一份给thispage,才可以使用setData
input方法则不需要