Html5嵌入钉钉的实现示例
(编辑:jimmy 日期: 2024/11/29 浏览:3 次 )
1,需要在项目种引入钉钉官方的js
<script type="text/javascript" src="http://g.alicdn.com/dingding/dingtalk-jsapi/2.3.0/dingtalk.open.js" > </script>
或者npm 也可以的
2,钉钉自带的api,有写是需要鉴权的,所以在使用之前一定要先鉴权
获取钉钉接口的鉴权
dd.config({ agentId:agentid, // 必填,微应用ID corpId:corpId,//必填,企业ID timeStamp:timeStamp, // 必填,生成签名的时间戳 nonceStr: nonceStr, // 必填,生成签名的随机串 signature:signature, // 必填,签名 type:0, jsApiList : [ 'runtime.info', 'biz.contact.choose','biz.contact.chooseMobileContacts', 'device.notification.confirm', 'device.notification.alert', 'device.notification.prompt', 'biz.ding.post','biz.util.previewImage', 'biz.util.openLink','device.geolocation.start','device.geolocation.get','biz.util.uploadImageFromCamera','biz.util.uploadImage' , 'device.audio.startRecord','device.audio.stopRecord','device.audio.play','device.audio.pause','device.audio.download','device.audio.translateVoice','device.audio.onPlayEnd' ] // 必填,需要使用的jsapi列表,注意:不要带dd。 });
3,鉴权以后就可以在项目中使用钉钉的api了,但是在调用钉钉的api的时候一定要在 dd.ready里面执行,不然会报错
dd.ready(()=>{ //获取地理位置 dd.device.geolocation.get({ targetAccuracy : Number, coordinate : Number, withReGeocode : Boolean, useCache:true, //默认是true,如果需要频繁获取地理位置,请设置false onSuccess : (result) =>{ alert('succe: ' + JSON.stringify(result)) }, onFail : (err) => { alert('fail: ' + JSON.stringify(err)) } }) })
ps:如果是全局使用钉钉的api,可以在app.vue页面种调用,也可以在main.js种调用
下一篇:浅析数据存储的三种方式 cookie sessionstorage localstorage 的异同