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

发布时间 - 2026-01-11 03:26:49    点击率:

微信小程序 报错: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>); 
 } 
 } 
 }); 
} 

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


# 微信小程序报错:this.setData  # is  # not  # a  # function  # 小程序报错解决办法  # 小程序中this.setData的使用和注意事项  # 微信小程序中this.data与this.setData的区别详解  # 微信小程序错误this.setData报错及解决过程  # 微信小程序使用this.setData()遇到的问题及解决方案详解  # 请先  # 报错  # 是在  # 如有  # 谢谢大家  # 解决方法  # 疑问请  # lt  # brush  # class  # js  # strong  # decryptedPass  # data  # gt  # pasteEncryptedText  # br  # page  # 微信小 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何做网站制作流程,*游戏网站怎么搭建?  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  潮流网站制作头像软件下载,适合母子的网名有哪些?  网站制作软件有哪些,制图软件有哪些?  清除minerd进程的简单方法  Laravel如何创建自定义中间件?(Middleware代码示例)  js实现点击每个li节点,都弹出其文本值及修改  如何快速搭建支持数据库操作的智能建站平台?  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  Laravel如何生成和使用数据填充?(Seeder和Factory示例)  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  如何在IIS7中新建站点?详细步骤解析  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  如何用花生壳三步快速搭建专属网站?  详解jQuery中基本的动画方法  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  android nfc常用标签读取总结  香港服务器WordPress建站指南:SEO优化与高效部署策略  深圳网站制作的公司有哪些,dido官方网站?  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  如何基于云服务器快速搭建网站及云盘系统?  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  🚀拖拽式CMS建站能否实现高效与个性化并存?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  如何获取免费开源的自助建站系统源码?  如何在阿里云虚拟主机上快速搭建个人网站?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  EditPlus中的正则表达式实战(5)  Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)  Linux网络带宽限制_tc配置实践解析【教程】  C++用Dijkstra(迪杰斯特拉)算法求最短路径  php结合redis实现高并发下的抢购、秒杀功能的实例  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  javascript读取文本节点方法小结  怎么用AI帮你为初创公司进行市场定位分析?  Laravel如何使用Service Container和依赖注入?(代码示例)  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  Python正则表达式进阶教程_复杂匹配与分组替换解析  如何在万网利用已有域名快速建站?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  nodejs redis 发布订阅机制封装实现方法及实例代码