有关vue 开发的钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案
2020-05-09 04:06
113 查看
最近在做钉钉的免登,npm 安装好 dingtalk-jsapi
后,执行 dd.ready()
怎么都不生效。但是判断当前环境是不是 ‘notInDingTalk' 时又是有效的。花了很长时间,一直找不到原因。后来无意中发现别人的代码似乎跟我有一点差异,于是抱着死马当活马医的心态试试,结果真的有效。
废话不多说,原因在于从官网复制的代码里 的匿名函数function(){},在vue开发里是无效的,需要改成 箭头函数 () =>{}
修改之前的:
这个 ‘this.userCode' 是临时修改成用于测试有没有进入 dd.ready() 的,不要在意这些细节。
如果正常的话,this.userCode 应该显示 :“开始执行ready 进入了钉钉 获取授权码成功”但是实际上只显示了:“开始执行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() 不执行内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
相关文章推荐
- 没有后端也能快速开发H5应用,Vue + OkayApi最佳CP开发!
- 没有后端也能快速开发H5应用,Vue + OkayApi最佳CP开发!
- Android开发过程遇到的安装好的APP打开程序崩溃,或者安装后应用列表里没有的问题及解决方案
- SSH框架之Struts的有关执行流程的面试题、配置上的共性问题、简单应用-用户登陆
- 使用Vue快速开发单页应用
- 使用Vue快速开发单页应用
- 基于vuecli3构建一个快速开发h5 APP的模板
- 企业应用开发有哪些通用性的问题及其解决方案呢?
- Vue开发跨端应用(五)cordova-ios运行问题
- Vue开发中遇到的问题与解决方案(一)
- 详解vue-cli 快速搭建单页应用之遇到的问题及解决办法
- SharpMap应用开发——中文乱码问题终极解决方案
- 钉钉环境下H5开发微应用遇到的问题和BUG(持续更新)
- vue开发中遇到的问题与解决方案(三)
- Android 移动应用开发 百度地图定位不准确问题 解决方案
- 阿里云 ubuntu16.04 下 ftp 的快速应用(包罗疑难问题解决方案)
- 使用electron-vue框架快速开发桌面应用
- iOS应用开发中图片的拉伸问题解决方案
- 使用 Vue-TCB 快速在 Vue 应用中接入云开发的方法
- .Net Core与Vue.js模块化前后端分离快速开发解决方案(NetModular)