有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案


Posted in Javascript onMay 09, 2020

最近在做钉钉的免登,npm 安装好 dingtalk-jsapi 后,执行 dd.ready()怎么都不生效。但是判断当前环境是不是 ‘notInDingTalk' 时又是有效的。花了很长时间,一直找不到原因。后来无意中发现别人的代码似乎跟我有一点差异,于是抱着死马当活马医的心态试试,结果真的有效。

废话不多说,原因在于从官网复制的代码里 的匿名函数function(){},在vue开发里是无效的,需要改成 箭头函数 () =>{}
修改之前的:

有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案

这个 ‘this.userCode' 是临时修改成用于测试有没有进入 dd.ready() 的,不要在意这些细节。
如果正常的话,this.userCode 应该显示 :“开始执行ready 进入了钉钉 获取授权码成功”但是实际上只显示了:“开始执行ready“修改后:

有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案

终于如愿显示授权码了:

有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案

贴上代码:

if (dd.env.platform !== "notInDingTalk") {
 this.userCode += '开始执行ready ';
 //进行钉钉登录操作
 dd.ready(() => {
 this.$Message.info('1')
 this.userCode = '进入了钉钉 ';
 dd.runtime.permission.requestAuthCode({
 corpId: corpId, // 企业id
 onSuccess: (info) => {
  //todo: 测试获取授权码
  this.userCode += " 获取授权码成功 ";
  this.userCode += info.code // 通过该免登授权码可以获取用户身份
 },
 onFail: (error) => {
  this.userCode += " 获取授权码失败 ";
  console.log('好吧,问题不小')
  this.$Message.error(JSON.stringify(error))
 }
 });
 });

总结

到此这篇关于有关vue 开发的钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案的文章就介绍到这了,更多相关vue 钉钉微应用 dd.ready() 不执行内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
Feb 14 Javascript
javascript mouseover、mouseout停止事件冒泡的解决方案
Apr 07 Javascript
元素未显示设置width/height时IE中使用currentStyle获取为auto
May 04 Javascript
jQuery实现可展开合拢的手风琴面板菜单
Sep 15 Javascript
JS+CSS实现六级网站导航主菜单效果
Sep 28 Javascript
jQuery实现图片局部放大镜效果
Mar 17 Javascript
JS中mouseover和mouseout多次触发问题如何解决
Jun 06 Javascript
浅谈JS继承_寄生式继承 & 寄生组合式继承
Aug 16 Javascript
Bootstrap Table从零开始
Jun 30 Javascript
Vue自定义指令结合阿里云OSS优化图片的实现方法
Nov 12 Javascript
微信小程序实现点击生成随机验证码
Sep 09 Javascript
浅谈vue2的$refs在vue3组合式API中的替代方法
Apr 18 Vue.js
基于JQuery实现页面定时弹出广告
May 08 #jQuery
使用vue cli4.x搭建vue项目的过程详解
May 08 #Javascript
JQuery复选框全选效果如何实现
May 08 #jQuery
JQuery省市联动效果实现过程详解
May 08 #jQuery
基于JavaScript实现控制下拉列表
May 08 #Javascript
JS数组的常用10种方法详解
May 08 #Javascript
如何实现js拖拽效果及原理解析
May 08 #Javascript
You might like
在PHP里得到前天和昨天的日期的代码
2007/08/16 PHP
php微信公众号js-sdk开发应用
2016/11/28 PHP
PHP判断当前使用的是什么浏览器(推荐)
2019/10/27 PHP
javascript RadioButtonList获取选中值
2009/04/09 Javascript
jquery实现的元素的left增加N像素 鼠标移开会慢慢的移动到原来的位置
2010/03/21 Javascript
JS无限树状列表实现代码
2011/01/11 Javascript
js识别不同浏览器基于userAgent做判断
2014/07/29 Javascript
简单方法判断JavaScript对象为null或者属性为空
2014/09/26 Javascript
使用node.js 制作网站前台后台
2014/11/13 Javascript
AngularJs Injecting Services Into Controllers详解
2016/09/02 Javascript
关于ES6的六个小特性(二)
2017/02/20 Javascript
JavaScript中立即执行函数实例详解
2017/11/04 Javascript
使用ngrok+express解决本地环境中微信接口调试问题
2018/02/26 Javascript
对于防止按钮重复点击的尝试详解
2019/04/22 Javascript
微信小程序自定义头部导航栏和导航栏背景图片 navigationStyle问题
2019/07/26 Javascript
vue中get请求如何传递数组参数的方法示例
2019/11/08 Javascript
微信小程序tabBar设置实例解析
2019/11/14 Javascript
js实现手表表盘时钟与圆周运动
2020/09/18 Javascript
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
Python设置在shell脚本中自动补全功能的方法
2018/06/25 Python
python读取文件名并改名字的实例
2019/01/07 Python
Django用户认证系统 组与权限解析
2019/08/02 Python
Python装饰器原理与基本用法分析
2020/01/07 Python
Python必须了解的35个关键词
2020/07/16 Python
HTML5 Video/Audio播放本地文件示例介绍
2013/11/18 HTML / CSS
阿玛尼美妆加拿大官方商城:Giorgio Armani Beauty加拿大
2017/10/24 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
无工作经验者个人求职信范文
2013/12/22 职场文书
演讲稿格式
2014/04/30 职场文书
信访工作经验交流材料
2014/05/23 职场文书
班风口号
2014/06/18 职场文书
关于清明节的演讲稿2015
2015/03/18 职场文书
phpQuery解析HTML乱码问题(补充官网未列出的乱码解决方案)
2021/04/01 PHP
MySQL中distinct和count(*)的使用方法比较
2021/05/26 MySQL
JavaScript模拟实现网易云轮播效果
2022/04/04 Javascript