微信小程序 this.setData is not a function
在一般的函数中:
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: url,
dataType: 'json',
success: function (res) {
this.setData({
data1: true
})
}
})
}
或者执行定时任务时候:
var si = setInterval(function () {
that.setData({
sendVerifyingCodeText: curCount + '秒后重新获取'
});
that.setData({
sendSmsCodeDisable: true
});
curCount--;
if (curCount <= 0) {
that.setData({
sendSmsCodeDisable: false
}),
clearInterval(si);
}
}, 1000);
这样会报错误:this.setData is not a function.
这个在新的函数内的this代表的是这个函数体,所有是没有this.setData。这个类似java中的this指的是当前对象,但是javascript是以函数为主体的,所以就是this在函数内部就当前函数。修改未:
解决方法就是 :在请求(wx.request)或者新的非当前js的方法外面添加:var that=this;然后用:
that.setData({
data1: true
})
微信小程序 this.setData is not a function的更多相关文章
- 微信小程序开发——setData的使用技巧
前言: 之前使用 setData,一直都是作为给变量赋值,感觉比起vue给data中的变量的赋值还是有点麻烦的. 最近项目不太紧张,为了提高小程序的开发效率及提升小程序开发的能力,又重新的通读了下小程 ...
- 微信小程序之setData原理以及几点关于小程序的吐槽
小程序不方便之处: 1: 想做个获取列表中每个item所在的对应滚动条的高度在哪里,或者元素本身的高度也不好获取,极其不方便,网上看的别人做的滚动条相关的,都是写死或者已知的item高度,目前没找到正 ...
- 微信小程序 ----- this.getOpenerEventChannel is not a function
小程序 添加新的功能, 页面跳转后,通过事件的发布订阅,实现 from => to 或者 to=> from 数据传递 1. 跳转到指定页面. 通过 wx.navigateTo() .请参 ...
- 微信小程序 this.setData() 详解
1.定义 setData()函数用于将逻辑层数据发送到视图层,同时对应的改变this.data的值. 2.setData()参数格式 接受一个对象,以键(key)值(value)的方式改变值. 其中, ...
- 微信小程序用setData修改数组或对象中的一个属性值
在page中有如下数组 data: { info:[ { name:"yuki", tou:"../img/head.jpg", zGong:130, gMon ...
- 微信小程序用setData给数组对象赋值
假如现在要给数组marker中的对象属性赋值 data: { marker: [ { latitude: ' ' , longitude: ' ' } ] }, 在方法中的写法为 fetchJ ...
- 微信小程序中用setData修改一个对象的属性值
原创文章 1. Page({ data: { items:{ //items为一个对象,is_like和like分别为其两个属性 is_like: 0, like: 0 ...
- 微信小程序 this.setData 修改json里面的值
page({ data:{ s1:{a:"",b:"b"} }, changeData:function(e){ var cData=this.data.s1; ...
- 微信小程序 - 为何setData到页面上有的加分号
Page({ /** * 页面的初始数据 */ data: { }, /** * 生命周期函数--监听页面加载 */ onLoad: function(options) { let _page = t ...
随机推荐
- KMP算法2
给定一个主串s,一个子串sub,将主串中的所有子串替换成replaceStr,并将最终结果输出来. #include<stdio.h> #include<string.h> # ...
- 6486: An Ordinary Game(规律)
题目描述 There is a string s of length 3 or greater. No two neighboring characters in s are equal.Takaha ...
- ecplise打不开提示Eclipse中...No java virtual machine was found...
解决办法: 在eclipse.ini文件中最前面添加这两行: -vm C:\Program Files\Java\jdk1.8.0_191\bin\javaw.exe 上面那个路径是你的java jd ...
- Windows下MySQL数据目录修改
最近在弄一个项目,需要修改windows下面的mysql的数据目录(mysql默认是存储在C盘的,这个不太好,未来一定会满了的). 我的 mysql 是安装版,版本是 5.7. 1.首先,需要知道my ...
- SpringBoot拦截器
在实际开发中,总存在着这样的场景,比如拦截请求的ip地址,或者在所有的请求都返回相同的数据,如果每一个方法都写出相同数据固然可以实现,但是随着项目的变大,重复的代码会越来越多,所以在这种情况我们可以用 ...
- 洛谷P1774 最接近神的人_NOI导刊2010提高(02)(求逆序对)
To 洛谷.1774 最接近神的人 题目描述 破解了符文之语,小FF开启了通往地下的道路.当他走到最底层时,发现正前方有一扇巨石门,门上雕刻着一幅古代人进行某种活动的图案.而石门上方用古代文写着“神的 ...
- Python3基础-高级用法
写在前面:本文主要是python高级练习部分,介绍了一些高级用法,这些都是零散的小知识,这些可以与函数式编程合在一起使用. 函数式编程1:Python中提供的函数式编程主要有: map(函数,可迭代式 ...
- 转 U-BOOT之stage1
前言 本文主要是基于大家比较熟悉的 s3c2410 ,对移植 u-boot 时 stage1 过程进行一个分析,网上关于之方面的资料很多,但是几乎都只是对代码作注解,容易让人产生知其一不知其二的感觉, ...
- [ONTAK2015]OR-XOR
[ONTAK2015]OR-XOR 题目大意: 一个长度为\(n(n\le5\times10^5)\)的序列\(A(0\le A_i\le10^{18})\),将其分为恰好\(m\)个连续段,设每一段 ...
- js原型的用法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...