Écrivez ceci dans le middleware :
wechat.reply.call(this);
Écrivez la fonction de réponse dans wechat comme ceci :
Wechat.prototype.reply = function(){ console.log('bbbbb'); var content = this.body; var message = this.weixin; var xml = util.tpl(content,message) console.log(xml); this.status = 200 this.type = 'application/xml' this.body = xml return }
Ensuite, il signale une erreur
TypeError: Cannot read property 'call' of undefined at Object. (C:\www\koa\wechat\wechat\g.js:54:16) at Generator.next () at onFulfilled (C:\www\koa\wechat\node_modules\co\index.js:65:19) at process._tickCallback (internal/process/next_tick.js:109:7)
Au fait, la fonction d'appel n'est-elle pas disponible en js natif ? Pourquoi ai-je eu une erreur lorsque je l'ai appelée ?
De plus, après recherche sur Baidu, il y a très peu de personnes avec cette erreur...
Demandez au maître : Quand cette erreur se produit-elle généralement ? Quelle est la raison de l'erreur ?
Par exemple
?a.call(this,null),但是此时a是undefined, l'erreur que vous rencontrez sera signaléeÊtes-vous sûr qu'il existe une méthode wechat.apply
L'instance WeChat ne doit avoir aucune valeur, veuillez l'imprimer avant d'appeler.
Si
x.call中x未定义,则其下的.call无法访问,所以你先确定一下wechat.replya été défini.Notez également qu'en JS, les noms de variables sont sensibles à la casse.