基本流程

以企业钉钉管理员身份登陆钉钉开发者平台,进入钉钉开放平台,选择企业内部应用

创建应用,并给应用添加对应logo图片

下载钉钉开放平台提供编译器,在编译器中扫码登陆钉钉账号,选择企业内部应用,并选择刚才新建的应用关联

代码开发、编译器上上传、开放者平台发布体验版或者正式版

小技巧

有些时候某个页面的数据的更新依托于另一个页面某些操作之后,比如菜品页面选择菜品之后,跳转到结算页面来对订单进行结算,结算成功之后要及时对菜品列表页面进行数据更新

getOrder(data).then(resp => {

dd.hideLoading();

if (resp.code == 200) {

var pages = getCurrentPages();//当前页面栈

var beforePage = pages[pages.length - 2];//获取上一个页面实例对象

beforePage.changeData();//触发父页面中的方法

}

})

复制代码二

针对钉钉小程序并没有vue的路由监听机制,有时候业务上需要监听当前页面的上一页面是哪个页面;比如订餐系统,由订单列表进入到取餐码页面,拿取餐码进行取餐,这种情况不同于一情况在子页面数据提交成功之后即可刷新上一页面数据,前端上只是提供一张取餐码图片,无法获取何时用户已经成功进行取餐,此时就要在父页面建立一个flag标志路由跳转去向,并利用onShow监听

//用isOpen进行标记

data: {

isOpen: true

},

getCode(event) {

let orderId = event.target.dataset.orderid;

this.setData({

isOpen: false

})

dd.navigateTo({

url: './mealCode/mealCode?orderID=' + orderId

})

},

onShow(){

if(!this.data.isOpen){

this.getOrderListData();

}

},

复制代码三路由层级嵌套太深问题,钉钉小程序也是有路由嵌套层级限制的,最多五层,但有的时候业务上需要不停几个页面间循环跳转,解决这个问题的方法是添加fail方法,及时清空堆栈

dd.navigateTo({

url: "../goods/goods",

fail: (err) => {

dd.reLaunch({

url: "../goods/goods"

})

}

})

复制代码四钉钉小程序下拉刷新,上拉加载更多数据处理

钉钉小程序自带UI库是没有提供刷新和上拉加载更多组件的,但提供了可以用来解决这个问题的事件处理函数

onPullDownRefresh() {

// 页面被下拉

},

onReachBottom() {

// 页面被拉到底部

let page = this.data.page + 1

this.setData({

page: page

})

this.getOrderListData();

},

复制代码五appjs的onLaunch执行完之后再执行Page的onLoad(微信小程序存在同样问题)

一般,微信或者钉钉小程序,appjs的onLaunch我们会放获取权限认证、免登之类的异步操作,只有这个异步操作成功之后,方可成功调取后面的页面上的功能接口,但是如果不做处理的话,都是第一个页面的onLoad先与appjs的onLaunch执行,导致调取失败,这里只要加申明一个异步回调函数即可解决

心得

我们开发的是企业内部应用的E应用,整体感觉是钉钉开放的这个是不成熟的,有一些功能没有做到,文档也及其不全面,有些明明支持却在文档里没有任何说明,一种你猜我支不支持、有么有的感觉。建议是有些钉钉文档没有的可以看下支付宝小程序、微信小程序对应功能是怎么写的,然后把全局对象改成dd,一般是可以的,好垃圾啊!

钉钉企业内部应用开发php,钉钉企业内部应用开发心得相关推荐

  1. 企业内部应用(阿里商旅)集成 钉钉 与 微信 实现SSO单点登陆

    1.钉钉准备工作 (1) 创建应用 https://open-dev.dingtalk.com/fe/app#/corp/app (2)获取应用凭证 记录 AgentId AppKey AppSecr ...

  2. 钉钉开放平台-小程序开发实战(钉钉小程序客户端)

    文章目录 钉钉小程序客户端 关于钉钉开放平台 一.小程序基础 1. 基本概念 2. 小程序页面基础 页面运行机制 页面生命周期 页面栈 页面跳转 怎么使用小程序的data-*属性? 3. 小程序常用布 ...

  3. 钉钉开放平台-小程序开发实战(钉钉小程序服务器端)

    文章目录 钉钉小程序服务器端 一.钉钉服务api 接口规范 二.第三方个人应用.第三方企业应用.企业内部应用 区别 必须使用钉钉云的情形 三.企业内部应用 服务API 1. 通信录管理 获取部门列表 ...

  4. 开发日志:准备开发ERP对接钉钉,对使用钉钉API简单可行性概述。

    钉钉是一款现在非常流行的业务办公类软件,具有企业内部沟通.考勤审批.外部CRM等功能.除此之外,钉钉还开放了API接口.让我们程序员可以非常方便借助钉钉已有的功能,补充企业管理的短板.刚好最近准备开发 ...

  5. 如何打通AD、企业微信、飞书、钉钉等社交账号及内外网应用身份?

    传统企业架构中,经常使用微软活动目录AD管理用户身份,员工通过自己的AD账户登录应用系统.随着互联网的发展和企业信息化转型,更多企业开始使用企业微信.飞书.钉钉这样的社交协作软件,同时也会尝试使用不少 ...

  6. php钉钉企业微应用免登demo,钉钉微应用免登实现

    用户在使用软件应用的过程中,第一步往往都是登录.输入账号密码,进行登录,登录的目的就是让应用识别张三是张三,而不是李四.相对应,如果能够不用输账号密码,应用就知道你是你,就叫做免登. 免登的源头还是需 ...

  7. AbpVnext 扩展企业微信扫码登录(钉钉登陆、短信登陆、微信登陆等)Vue框架

    目录 1.开始开发准备 1.1 企业微信扫码登陆接入流程 1.2 开启网页授权登陆 1.3 构造独立窗口登陆二维码 1.4 构造内嵌登陆二维码 @@登陆顺序: 1. 发现文档配置 2. 获取token ...

  8. 如何通过企业微信、飞书、钉钉消息通知接收双因子认证动态密码?

    使用宁盾双因子认证H5令牌的用户每次登录时要切回到企业微信.飞书.钉钉工作台中,找到H5令牌小程序,点进去看动态码.记住或复制动态码后再切回登录界面输入验证. 路径合理,但实际使用场景下不够便捷.用户 ...

  9. 企业微信办公,这些方面钉钉比不了

    企业微信和钉钉这对冤家均出自名门,但目前来看,市场份额钉钉似乎占了大多数,企业微信落了下风.那么企业微信的优势真的很不明显吗? 其实并非如此,要说优势,虽然钉钉在人事方面做得更加到位,但这并不意味着在 ...

  10. esp32-C3开发板制作钉钉蓝牙打卡神器

    我之前对嵌入式.开发板的使用没太接触过.这篇文章记录我用esp32开发板制作钉钉打卡神器的过程,如果能对其他人有一点点小帮助那就更好啦. 关于打卡环境(打卡方式).我们实验室门口墙上有一个考勤机,考勤 ...

最新文章

  1. javascript 变量提前
  2. Eclipse + CDT引入OpenCV失败的解决的方法
  3. 字符串格式化成时间格式_小程序wxs中的时间格式化以及格式化时间和date时间互转...
  4. iPhone SDK开发基础之iPhone程序框架
  5. 动力电池溯源追溯系统_来溯有源的区块链溯源系统、追溯系统为什么做的好?值得推荐!...
  6. python编程成果_20192217 2019-2020-2 《Python程序设计》实验四报告
  7. python语言简介
  8. 吴恩达机器学习视频笔记和编程作业(Python实现)汇总
  9. 网狐大厅介绍页js脚本错误
  10. 如何给计算机c盘加内存,电脑C盘内存太小_这个方法教你扩大C盘空间 - 驱动管家...
  11. jquery学习总结
  12. Fusion360显示模糊怎么办?
  13. JFreeChart| JFreeChart组合图表(Combined Charts)
  14. G.652光纤各个子类的主要区别及应用
  15. es父子结构查询_探索ES-嵌套对象和父子对象(四)
  16. 如何树立正确的人生观、价值观、世界观?
  17. 开源代理软件GAppProxy
  18. xml 文件部分抬头(逐步完善)
  19. 使用频谱分析仪测量射频信号发射功率
  20. 心然吧十周年,心然给大家的话

热门文章

  1. Android新手上路
  2. 李林计算机学院广西大学,李茹-广西大学·生命科学与技术学院
  3. STM32F103定时器解码PT2262
  4. ARM微控制器与嵌入式系统 基础知识
  5. DROP和DELETE的区别
  6. Java 2 实用教程
  7. html页面统计在线人数,统计在线人数couter
  8. STM32自动生成精美图案
  9. 将符号(amp; amp;)解码为正常
  10. 画图神器-drawio(配合markdown使用更佳)