Maison  >  Article  >  Applet WeChat  >  Comment résoudre le problème de l'erreur de l'applet WeChat : this.setData n'est pas une fonction

Comment résoudre le problème de l'erreur de l'applet WeChat : this.setData n'est pas une fonction

不言
不言original
2018-06-27 16:15:072825parcourir

Cet article présente principalement les informations pertinentes sur la solution à l'erreur de l'applet WeChat : this.setData n'est pas une fonction. J'espère que cet article pourra aider tout le monde à résoudre des problèmes similaires. Les amis dans le besoin pourront s'y référer

L'applet WeChat signale une erreur : this.setData n'est pas une fonction


Le code défini dans la page est le suivant, le code signalera une erreur :

this.setData n'est pas une function

<strong> pasteEncryptedText:function()</strong>{ 
 let decryptedPass = this.data.decryptedPassword; 
 if (decryptedPass == &#39;&#39; ){ 
 wx.showToast({ 
 title: &#39;请先输入解密密码&#39;, 
 mask: true, 
 success: function (res) { 
  setTimeout(function () { 
  wx.hideToast(); 
  }, 4000); 
 }, 
 }); 
 return; 
 }else{ 
 wx.getClipboardData({ 
 <strong>success: function (res)</strong> { 
  if ( res.data == &#39;&#39; ){ 
  wx.showToast({ 
  title: &#39;剪贴板没有内容&#39;, 
  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); 
  } 
 } 
 }); 
 } 
 }

Analyse du problème : Appelez une autre fonction wx.showToast() imbriquée dans la fonction pasteEncryptedText (), Et setData() est appelé dans wx.showToast() À l'heure actuelle, this.setData()

n'est pas la page, mais l'objet de wx.showToast()

Solution :


<strong> 在函数pasteEncryptedText()一开始处将this对象保存:</strong>let that = this;

pasteEncryptedText:function(){ 
 let decryptedPass = this.data.decryptedPassword;

<strong>let that = this;</strong> 
if (decryptedPass == &#39;&#39; ){ 
 wx.showToast({ 
 title: &#39;请先输入解密密码&#39;, 
 mask: true, 
 success: function (res) { 
 setTimeout(function () { 
 wx.hideToast(); 
 }, 4000); 
 }, 
 }); 
 return; 
}else{ 
 wx.getClipboardData({ 
 success: function (res) { 
 if ( res.data == &#39;&#39; ){ 
 wx.showToast({ 
  title: &#39;剪贴板没有内容&#39;, 
  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>); 
 } 
 } 
 }); 
}

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Comment résoudre le problème de l'applet WeChat demandant un aperçu mobile du serveur ne demandant aucune donnée


Comment Conseils pour résoudre les comptes publics WeChat : Problèmes avec la fonction API non autorisée


Comment résoudre les erreurs dans les mini-programmes WeChat : {"baseresponse":{"errcode":-80002,"errmsg ":""}}


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn