公司之前的项目大多是微信小程序,现在要开发一个钉钉小程序,本篇文章就说一说我开发过程中遇到的一些问题,项目是用HBuilder X创建uniapp项目
编译
使用HBuilder X创建uniapp项目,在根目录下新建package.json文件,添加进去
{
"uni-app": {
"scripts": {
"mp-dingtalk": {
"title":"钉钉小程序",
"env": {
"UNI_PLATFORM": "mp-alipay"
},
"define": {
"MP-DINGTALK": true
}
}
}
}
}
在运行中会出现运行到钉钉小程序

手机预览
使用手机预览小程序出现“抱歉,你不在应用的可使用范围内,请联系管理员修改配置”,有三个可能原因
调试该内部应用的人员不在开发人员列表中。需在开发者后台> 对应应用 > 人员管理中设置开发人员。
未对该内部应用上传版本。需确保在小程序开发工具中上传该应用的版本,其次在开发者后台> 对应应用 > 版本管理与发布中发布版本。
开发者后台> 对应应用 > 版本管理与发布 > 可使用范围中未设置该人员。
具体文档地址:https://open.dingtalk.com/document/orgapp/app-faq
icon字段和微信小程序不一样
微信小程序:iconPath---点击之前,selectedIconPath---点击之后
钉钉小程序:icon---点击之前,activeIcon---点击之后
日期选择器
直接上代码
<input type="text" @focus="pd" style="border-radius: 8px;width: 100%;" class="text-sm" v-model="form.pd" placeholder="请填写生产日期" >
dd.datePicker({
format: 'yyyy-MM-dd',
currentDate: '2012-12-12',
success: (res) => {
dd.alert({
content: res.date,
});
},
});
触发选择器必须要用@focus或者是button,别的我试了不起作用,还有一个问题就是在手机预览时触发之后会弹起软键盘把日期选择器挡着了,所以需要将键盘隐藏
dd.hideKeyboard();
但是还有一点小瑕疵,就是触发之后键盘会弹起然后才会隐藏,我目前还没解决,如果你们有好的解决办法可以给我评论
不支持put方法
刚开始不知道使用了后端给的put方法,接口时好时坏,报错的都是第一个字段不能为空,但是前端传给后端的数据都是有数据的,后来发现不能用put,后端改了接口就没事了。
钉钉小程序没有表格,只能自己写
目前想到的就这么多,如果有其他的再补充