接入钉钉企业免登陆遇到的坑!!!!
今天接入免登陆遇到个大坑,看官方文档上写了,先引入dingtalk.js,
然后配置dd.config({...})
接着dd.ready(function(){
..........
});
问题出现了,dd.ready 怎么也不运行,折腾了一下午,就差跪下来求他了,最后一个不经意的删除dd.config({}),奇迹出现了,
dd.ready 执行了!!!!苍天估计被我这种不屈不挠的精神所感动,故意暗中帮了我一把,这才得以将问题解决。
这是下面代码:
dd.error(function(error){ alert(JSON.stringify(error)) ; }); dd.ready(function() { dd.runtime.permission.requestAuthCode({ corpId: _config.corpid, onSuccess: function(result) { LoginByDDCode(result.code).then(res=>{ //这是自己封装的后台API if(!res.error){ this.userinfo=res; this.routerhome(); }else{ this.openid=res.openid; } }); }, onFail : function(err) { alert('requestAuthCode fail: ' + JSON.stringify(err)); } }); })
哦,对了,还有个问题要注意,就是在vue中引用外部的js.有时会失效。有个最简单的办法就是:
mounted(){ let s = document.createElement('script'); s.type = 'text/javascript'; s.src = 'http://g.alicdn.com/dingding/open-develop/1.5.1/dingtalk.js'; document.body.appendChild(s); }