suchen

Heim  >  Fragen und Antworten  >  Hauptteil

node.js – Nodejs-Fehler: Die Eigenschaft „call“ von undefiniert kann nicht gelesen werden

Schreiben Sie dies in die Middleware:
wechat.reply.call(this);
Schreiben Sie die Antwortfunktion in Wechat wie folgt:

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
}

Dann meldet es einen Fehler

TypeError: Cannot read property 'call' of undefined
      at Object.<anonymous> (C:\www\koa\wechat\wechat\g.js:54:16)
      at Generator.next (<anonymous>)
      at onFulfilled (C:\www\koa\wechat\node_modules\co\index.js:65:19)
      at process._tickCallback (internal/process/next_tick.js:109:7)
      

Übrigens, ist die Aufruffunktion nicht in nativem JS verfügbar. Warum habe ich beim Aufruf eine Fehlermeldung erhalten?

Darüber hinaus gibt es nach der Suche auf Baidu nur sehr wenige Leute mit diesem Fehler ...
Fragen Sie den Meister: Wann tritt dieser Fehler normalerweise auf? Was ist der Grund für den Fehler?

PHP中文网PHP中文网2750 Tage vor1325

Antworte allen(3)Ich werde antworten

  • 大家讲道理

    大家讲道理2017-06-29 10:11:20

    举个栗子 a.call(this,null),但是此时 aundefined,就会报你遇到的错误
    确认有 wechat.apply 这个方法么

    Antwort
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-06-29 10:11:20

    在中间件中这么写:
    wechat.reply.call(this);在wechat中的reply函数是这么写的:

    wechat实例应该没有值,你在调用之前打印一下看看。

    console.log(wechat.reply)

    Antwort
    0
  • 怪我咯

    怪我咯2017-06-29 10:11:20

    如果x.callx未定义,则其下的.call无法访问,所以你先确定一下wechat.reply是否已经定义。
    另外,注意在JS中,变量名是区分大小写的。

    Antwort
    0
  • StornierenAntwort