采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
第五章 5.4 生成菜单中生成微信菜单中...
报错:
Unhandled rejection TypeError: Cannot read property 'then' of undefined
Github地址:https://github.com/zhuayu/wechat
第72行前面加个return
非常感谢!get
这里等于是有一个嵌套的 promise,所以:
Wechat.prototype.fetchAccessToken = function(data){ var that = this if(this.access_token && this.expires_in){ if(this.isValidAccessToken(this)){ return Promise.resolve(this) } } this.getAccessToken().then(function(data){
的这个
this.getAccessToken().then(function(data){
this.getAccessToken 前面需要加上 return,之所以有时候会跑通,是因为 fetchAccessToken 的时候,如果 token 未过期,就不会走到下一步,自然也就不会出错。
还有这里:
this.getAccessToken() .then(function(data){
this.getAccessToken() 前面要加 rerurn ,报错信息提示是 找不到 then 这个方法,说明通过 fetchAccessToken 拿到的不是一个 Promise,应该是这里没有把这个 promise 一路返回。
好奇怪啊!!!按理说,之前原型上的方法调了那么多次fetchAccessToken方法,都能返回一个promise对象,而这次却不行,scott老师您能讲讲这是为什么啊
fetchAccessToken 我已经加过return了.
把 fetchAccesstoken 的方法代码贴一下,看下是不是这个问题的导致的,需要加一个 return:
http://coding.imooc.com/learn/questiondetail/70.html
如果没有添加这个return 我是拿不到AccessToken的,我已经拿到了AccessToken。其它的API操作可以跑通测试成功,唯独在这个卡住,伤心啊。T.T
登录后可查看更多问答,登录/注册
Koa框架、ES2015新特性、MongoDB,开发微信公众号
3.6k 43
2.5k 12
4.0k 11
1.3k 10
935 9