有关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 相关文章推荐
jQuery.extend 函数详解
Feb 03 Javascript
幻灯片带网页设计中的20个奇妙应用示例小结
May 27 Javascript
JS图片根据鼠标滚动延时加载的实例代码
Jul 13 Javascript
JavaScript插件化开发教程 (二)
Jan 27 Javascript
JavaScript淡入淡出渐变简单实例
Aug 06 Javascript
手机端转盘抽奖代码分享
Sep 10 Javascript
JavaScript文本框脚本编写的注意事项
Jan 25 Javascript
BootStrap tooltip提示框使用小结
Oct 26 Javascript
深入理解requireJS-实现一个简单的模块加载器
Jan 15 Javascript
JS求1到任意数之间的所有质数的方法详解
May 20 Javascript
高性能js数组去重(12种方法,史上最全)
Dec 21 Javascript
一篇文章学会Vue中间件管道
Jun 20 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中常见数据类型的汇总分享
2014/01/06 PHP
ThinkPHP学习笔记(一)ThinkPHP部署
2014/06/22 PHP
php实现分页显示
2015/11/03 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
CI框架网页缓存简单用法分析
2018/12/26 PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
2019/10/17 PHP
location.href语句与火狐不兼容的问题
2010/07/04 Javascript
div失去焦点事件实现思路
2014/04/22 Javascript
jquery获取选中的文本和值的方法
2014/07/08 Javascript
Bootstrap基本组件学习笔记之进度条(15)
2016/12/08 Javascript
关于vue.js过渡css类名的理解(推荐)
2017/04/10 Javascript
对于js垃圾回收机制的理解
2017/09/14 Javascript
基于webpack 实用配置方法总结
2017/09/28 Javascript
详解webpack打包后如何调试的方法步骤
2018/11/07 Javascript
IDEA安装vue插件图文详解
2019/09/26 Javascript
小程序如何写动态标签的实现方法
2020/02/05 Javascript
Vue 实现对quill-editor组件中的工具栏添加title
2020/08/03 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
Python cookbook(数据结构与算法)对切片命名清除索引的方法
2018/03/13 Python
Python-while 计算100以内奇数和的方法
2019/06/11 Python
Python参数类型以及常见的坑详解
2019/07/08 Python
python 解决mysql where in 对列表(list,,array)问题
2020/06/06 Python
Python爬取网页信息的示例
2020/09/24 Python
使用Html5多媒体实现微信语音功能
2019/07/26 HTML / CSS
Exoticca英国:以最优惠的价格提供豪华异国情调旅行
2018/10/18 全球购物
介绍一下Cookie和Session及他们之间的区别
2012/11/20 面试题
物流仓储计划书
2014/01/10 职场文书
酒店中秋节促销方案
2014/01/30 职场文书
《影子》教学反思
2014/02/21 职场文书
毕业班联欢会主持词
2014/03/27 职场文书
党建工作先进材料
2014/05/02 职场文书
2015年教师节贺卡寄语
2015/03/24 职场文书
建议书的格式及范文
2015/09/14 职场文书
小学记事作文之200字
2019/08/06 职场文书
如何用Node.js编写内存效率高的应用程序
2021/04/30 Javascript
用PYTHON去计算88键钢琴的琴键频率和音高
2022/04/10 Python