yield handler.call(this,next);问题
来源:
qq_陈被单_0
2016-08-27
老师,你好,错误提示 定位到这一行代码,handler没有定义? 要怎么解决呢?
yield handler.call(this,next);
wechat.reply.call(this);
对这2行代码也不清楚~ 能否解释一下,谢谢!
写回答
3回答
-
沙漠江河
2017-07-21
TypeError: Cannot read property 'call' of undefined
能帮我分析一下这是怎么回事吗
10 -
Scott
2017-07-22
是外面没有传进来用来回复的逻辑,这里拿不到这个参数了,代码流程是这样:
// reply.js export.reply = function *(next) { // 各种回复策略 this.body = '回复的内容' } // app.js app.use(wechat(wechatOps, reply.reply)) // g.js module.exports = function(opts, handler) { var wechat = new Wechat(opts) return function *(next) { // ... // 这里的 handler 就是 app.js 里面传进来的 reply.reply yield handler.call(this, next) wechat.reply.call(this) } }
00 -
Scott
2016-08-28
可以往前面翻一番其他同学的提问哦。这里的reply要从app.js use 中间件的时候作为参数传进去,就是用来回复的reply.reply
00
相似问题