微信小程序报错:this.setData is not a function的解决办法


Posted in Javascript onSeptember 27, 2017

微信小程序 报错:this.setData is not a function

在page中定义的代码如下,代码会报错:this.setData is not a function

<strong> pasteEncryptedText:function()</strong>{ 
 let decryptedPass = this.data.decryptedPassword; 
 if (decryptedPass == '' ){ 
 wx.showToast({ 
 title: '请先输入解密密码', 
 mask: true, 
 success: function (res) { 
  setTimeout(function () { 
  wx.hideToast(); 
  }, 4000); 
 }, 
 }); 
 return; 
 }else{ 
 wx.getClipboardData({ 
 <strong>success: function (res)</strong> { 
  if ( res.data == '' ){ 
  wx.showToast({ 
  title: '剪贴板没有内容', 
  mask: true, 
  success: function (res) { 
  setTimeout(function () { 
   wx.hideToast(); 
  }, 4000); 
  }, 
  }) 
  }else{ 
  console.log(decryptedPass); 
  console.log(res.data); 
  <strong>this.setData({ 
  encryptedTextDecode: res.data, 
  originalTextDecode: desEncryptedDecrypted.decrypt(res.data, decryptedPass), 
  });</strong> 
  console.log(this.data.originalTextDecode); 
  } 
 } 
 }); 
 } 
 }

问题分析:在函数 pasteEncryptedText()里面嵌套调用另一个函数 wx.showToast(),而setData()是在wx.showToast()中调用的,此时this.setData() 

中的this不是page,而是wx.showToast()这个对象了 

解决方法:

<strong> 在函数pasteEncryptedText()一开始处将this对象保存:</strong>let that = this;
pasteEncryptedText:function(){ 
 let decryptedPass = this.data.decryptedPassword;
<strong>let that = this;</strong> 
if (decryptedPass == '' ){ 
 wx.showToast({ 
 title: '请先输入解密密码', 
 mask: true, 
 success: function (res) { 
 setTimeout(function () { 
 wx.hideToast(); 
 }, 4000); 
 }, 
 }); 
 return; 
}else{ 
 wx.getClipboardData({ 
 success: function (res) { 
 if ( res.data == '' ){ 
 wx.showToast({ 
  title: '剪贴板没有内容', 
  mask: true, 
  success: function (res) { 
  setTimeout(function () { 
  wx.hideToast(); 
  }, 4000); 
  }, 
 }) 
 }else{ 
 console.log(decryptedPass); 
 console.log(res.data); 
 <strong> that.setData</strong>({ 
  encryptedTextDecode: res.data, 
  originalTextDecode: desEncryptedDecrypted.decrypt(res.data, decryptedPass), 
 }); 
 console.log(<strong>that.data.originalTextDecode</strong>); 
 } 
 } 
 }); 
}

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望通过本文能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
Jquey拖拽控件Draggable使用方法(asp.net环境)
Sep 28 Javascript
input按钮的事件处理大全
Dec 10 Javascript
谈谈jQuery Ajax用法详解
Nov 27 Javascript
利用Jquery队列实现根据输入数量显示的动画
Sep 01 Javascript
js初始化验证实例详解
Nov 26 Javascript
Angular之指令Directive用法详解
Mar 01 Javascript
深入理解Vue生命周期、手动挂载及挂载子组件
Sep 27 Javascript
如何利用@angular/cli V6.0直接开发PWA应用详解
May 06 Javascript
浅析JS中回调函数及用法
Jul 25 Javascript
AngularJS使用$http配置对象方式与服务端交互方法
Aug 13 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
Oct 10 Javascript
微信小程序实现简易table表格
Jun 19 Javascript
EasyUI Tree树组件无限循环的解决方法
Sep 27 #Javascript
详解微信小程序Page中data数据操作和函数调用
Sep 27 #Javascript
深入理解Vue生命周期、手动挂载及挂载子组件
Sep 27 #Javascript
微信小程序中button组件的边框设置的实例详解
Sep 27 #Javascript
使用javaScript实现鼠标拖拽事件
Apr 03 #Javascript
vue-cli项目中怎么使用mock数据
Sep 27 #Javascript
javaScript实现复选框全选反选事件详解
Nov 20 #Javascript
You might like
一步一步学习PHP(7) php 字符串相关应用
2010/03/05 PHP
解析PHP中一些可能会被忽略的问题
2013/06/21 PHP
完善CodeIgniter在IDE中代码提示功能的方法
2014/07/19 PHP
PHP简单实现上一页下一页功能示例
2016/09/14 PHP
jQuery使用数组编写图片无缝向左滚动
2012/12/11 Javascript
js动态为代码着色显示行号
2013/05/29 Javascript
window.onresize 多次触发的解决方法
2013/11/08 Javascript
简单选项卡 js和jquery制作方法分享
2014/02/26 Javascript
jQuery实现监控页面所有ajax请求的方法
2015/12/10 Javascript
10个JavaScript中易犯小错误
2016/02/14 Javascript
Angularjs的ng-repeat中去除重复数据的方法
2016/08/05 Javascript
详解在Vue中有条件地使用CSS类
2017/09/30 Javascript
NodeJS父进程与子进程资源共享原理与实现方法
2018/03/16 NodeJs
javascrpt密码强度校验函数详解
2020/03/18 Javascript
解决vant title-active-color与title-inactive-color不生效问题
2020/11/03 Javascript
python实现简单登陆流程的方法
2018/04/22 Python
基于python实现名片管理系统
2018/11/30 Python
python将list转为matrix的方法
2018/12/12 Python
python 同时运行多个程序的实例
2019/01/07 Python
对Python实现累加函数的方法详解
2019/01/23 Python
django框架防止XSS注入的方法分析
2019/06/21 Python
python线程定时器Timer实现原理解析
2019/11/30 Python
Python3将ipa包中的文件按大小排序
2020/04/17 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
2020/06/02 Python
Python常用数据分析模块原理解析
2020/07/20 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
PHP面试题附答案
2015/11/28 面试题
竞聘演讲稿范文
2014/01/12 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
演讲比赛的活动方案
2014/08/28 职场文书
大学本科生职业生涯规划书范文
2014/09/14 职场文书
学生检讨书怎么写?
2014/10/10 职场文书
检讨书格式范文
2015/05/07 职场文书
MySQL性能压力基准测试工具sysbench的使用简介
2021/04/21 MySQL
Go语言空白表示符_的实例用法
2021/07/04 Golang