乐趣区

完成钉钉小程序的开发

背景: 之前做过一个支付宝小程序, 领导要求用钉钉写个一样的出来. 于是乎就开始了.

首先创建一个钉钉小程序

钉钉小程序有四个场景, 我尝试了前三个场景, 感觉就是发布的时候不太一样. 最终选中了第三方个人应用开发.
如果是公司开发的话记得找公司要管理账号. 我是先自己创建了一个企业写的测试应用.
下面的 U_Gen 价签小工具是我创建好的小程序.

下载小程序开发者工具, 引入官网给的 git 上的代码.

(我服务端和前端代码都下过, 后面尝试了下, 不能一起写. 我这个项目需求也很简单不需要服务端做很多事, 所以我就讲讲我主要写的前端页面吧.)

绑定小程序, 修改页面

小程序开发者工具里面可以开发很多版本的, 你可以在这里选择你创建的小程序的类型.

然后在旁边关联你创建好的小程序就可以了.

我是写完了再截图的, 所以目录东西可能有的多. 给介绍一下,
我引入了 add-button. 因为我要显示 icon 的, 在这里写 icon 会方便一些.
static 文件夹下就是我的 icon 图标了. 至于怎么导入 icon 图标我的文章里描述的很清楚了. 不懂的可以再看一下这篇 引入阿里 icon 图标
todos 文件夹下就是我的页面样式, 逻辑等了.

这里要连接后端接口的话一定要记得添加安全域名:


然后在 js 文件中去发请求

dd.showLoading()就是显示个 loading 出来.
dd.httpRequest()就是发请求了.
dd.alert()是弹框, 里面的 content 是弹框内容,buttonText 是弹框提示语.

修改主题色在 app.acss 里面.

修改小程序标题在 app.json 里面,”pages” 里面是一进页面加载的页面路径.

如果你也引入了 add-button 的话记得在需要用的文件里导入, 就像我这个 todos.json 里面导入的样子一样.

add-button 里面的样式和内容被我改了很多, 我还是贴出来吧.



我的页面代码都是在 todos 里面. 也一并附上
主要就是 axml 里面的内容. 其他的逻辑都是根据自己需求去写的. 我的页面也只用到了钉钉的几个方法而已.

设置体验版, 增加体验人员

再介绍下小程序开发者工具吧:
1: 可以更改机型, 看样式的
2: 上传代码到钉钉开放平台的版本管理里面
3: 开启手机模拟器, 右侧就会显示一个这样的模拟器出来
4: 修改样式的.

附上我的小程序效果图:

遇到的问题

1: 发请求参数一直不对, 最后自己写了 headers 指定了格式, 又加上了 JSON.stringify 转了一下才好.
2: 把服务端的方法用到了前端, 我一直想在前端去生成签名, 玩一下免登陆, 获取个用户头像啥的. 但是没成功. 最后发现那些方法都是服务端的. 前端用不了.. 我想应该不会有人跟我一样.. 但还是说一下..(其实签名我参数最后都写出来了的.. 应该是对的)
3:icon 加载比文字慢. 我原来是写的 button, 然后写了个 text 把 icon 放到 button 旁边. 但是加载特慢, 扫描后回到页面图标就会消失一会儿. 体验感很差, 最后没办法, 只能跟支付宝小程序写一样的, 来个 add-button. 把 icon 放进 add-button 里面. 然后在用到的 todos 文件里, 引入 add-button. 让它先加载. 就不会有这个问题了.
4: 如果有些问题网上你也没搜到答案, 官网的 api 也没找到解决方法. 可以去问人工服务. 哈哈哈哈. 我第一次问. 还真的解决了问题的. 就在钉钉开发平台的右下角, 可以接入人工服务的. 就是回的慢了点.

关于小程序, 不管是微信的, 还是支付宝的, 还是钉钉的, 我感觉都一样的. 只是调用的方法名不一样而已. 你会写了一个, 其他的都是依葫芦画瓢而已.

退出移动版