有关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 相关文章推荐
js cookies 常见网页木马挂马代码 24小时只加载一次
Apr 13 Javascript
JavaScript CSS修改学习第一章 查找位置
Feb 19 Javascript
jQuery自定义动画函数实例详解(附demo源码)
Dec 10 Javascript
自定义Angular指令与jQuery实现的Bootstrap风格数据双向绑定的单选与多选下拉框
Dec 12 Javascript
JavaScript下拉菜单功能实例代码
Mar 01 Javascript
javascript基于牛顿迭代法实现求浮点数的平方根【递归原理】
Sep 28 Javascript
解决VUE框架 导致绑定事件的阻止冒泡失效问题
Feb 24 Javascript
关于vue的语法规则检测报错问题的解决
May 21 Javascript
微信小程序动画(Animation)的实现及执行步骤
Oct 28 Javascript
微信小程序新手教程之启动页的重要性
Mar 03 Javascript
VUE脚手架具体使用方法
May 20 Javascript
JavaScript实现10秒后再次获取验证码
Dec 02 Javascript
基于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中创建空文件的代码[file_put_contents vs touch]
2012/01/20 PHP
ajax在joomla中的原生态应用代码
2012/07/19 PHP
Yii分页用法实例详解
2014/12/04 PHP
PHP中的流(streams)浅析
2015/07/02 PHP
php遍历解析xml字符串的方法
2016/05/05 PHP
php7安装mongoDB扩展的方法分析
2017/08/02 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
javascript 按回车键相应按钮提交事件
2009/11/02 Javascript
JQuery 文本框使用小结
2010/05/22 Javascript
jquery中动态效果小结
2010/12/16 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
JS修改地址栏参数实例代码
2016/06/14 Javascript
jQuery右下角悬浮广告实例
2016/10/17 Javascript
JSON中key动态设置及JSON.parse和JSON.stringify()的区别
2016/12/29 Javascript
一步步教你利用webpack如何搭一个vue脚手架(超详细讲解和注释)
2018/01/08 Javascript
JavaScript 有用的代码片段和 trick
2018/02/22 Javascript
react koa rematch 如何打造一套服务端渲染架子
2019/06/26 Javascript
Node.js操作MongoDB数据库实例分析
2020/01/19 Javascript
Python的__builtin__模块中的一些要点知识
2015/05/02 Python
使用Python从有道词典网页获取单词翻译
2016/07/03 Python
Django自定义分页效果
2017/06/27 Python
TensorFlow高效读取数据的方法示例
2018/02/06 Python
CentOS 7 安装python3.7.1的方法及注意事项
2018/11/01 Python
Cotton On美国网站:澳洲时装连锁品牌
2016/10/25 全球购物
世界上最大的餐具公司:Oneida
2016/12/17 全球购物
爱游人:Travelliker
2017/09/05 全球购物
同程旅游英文网站:LY.com
2018/11/13 全球购物
实习老师个人总结的自我评价
2013/09/28 职场文书
体育教育专业自荐信范文
2013/12/20 职场文书
求职信模板怎么做
2014/01/26 职场文书
竞选班干部演讲稿100字
2014/08/20 职场文书
村党的群众路线教育实践活动工作总结
2014/10/25 职场文书
环保证明
2015/06/23 职场文书
房屋质量投诉书
2015/07/02 职场文书
2015年重阳节主持词
2015/07/04 职场文书
防止web项目中的SQL注入
2021/12/06 MySQL