Rumah > Soal Jawab > teks badan
Tulis ini dalam middleware:
wechat.reply.call(this);
Tulis fungsi balasan dalam wechat seperti ini:
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
}
Kemudian ia melaporkan ralat
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)
Sebenarnya, bukankah fungsi panggilan tersedia dalam js asli Mengapa saya mendapat ralat semasa saya memanggilnya?
Selain itu, selepas mencari di Baidu, terdapat sangat sedikit orang yang mengalami ralat ini...
Tanya tuan: Bilakah ralat ini biasanya berlaku? Apakah sebab kesilapan itu?
大家讲道理2017-06-29 10:11:20
Sebagai contoh a.call(this,null)
,但是此时 a
是 undefined
, ralat yang anda hadapi akan dilaporkan
Adakah anda pasti ada kaedah wechat.apply
女神的闺蜜爱上我2017-06-29 10:11:20
Menulis seperti ini dalam middleware:
wechat.reply.call(ini); menulis fungsi balasan dalam wechat seperti ini:
Instance wechat sepatutnya tiada nilai, sila cetak sebelum membuat panggilan.
console.log(wechat.reply)
怪我咯2017-06-29 10:11:20
Jika x.call
中x
未定义,则其下的.call
无法访问,所以你先确定一下wechat.reply
telah ditakrifkan.
Selain itu, ambil perhatian bahawa dalam JS, nama pembolehubah adalah sensitif huruf besar-besaran.