更新记录
2.5.3(2024-04-26)
- 更新云对象配置
2.5.2(2024-04-17)
- 优化云对象
2.5.1(2024-04-08)
- 更新
平台兼容性
阿里云 | 腾讯云 | 支付宝云 |
---|---|---|
√ | × | × |
Vue2 | Vue3 |
---|---|
√ | √ |
App | 快应用 | 微信小程序 | 支付宝小程序 | 百度小程序 | 字节小程序 | QQ小程序 |
---|---|---|---|---|---|---|
HBuilderX 3.5.2 app-vue | × | √ | × | × | × | × |
钉钉小程序 | 快手小程序 | 飞书小程序 | 京东小程序 |
---|---|---|---|
× | × | × | × |
H5-Safari | Android Browser | 微信浏览器(Android) | QQ浏览器(Android) | Chrome | IE | Edge | Firefox | PC-Safari |
---|---|---|---|---|---|---|---|---|
× | √ | √ | × | √ | × | √ | √ | × |
云函数类插件通用教程
使用云函数类插件的前提是:使用HBuilderX 2.9+
sv-id-pages
写在前面
- 基于uni-id-pages,重构部分页面和逻辑代码。
- 目前适配了账号密码登录,手机号一键登录,短信验证码登录,微信登录,密码更改,短信验证码重置密码等。
- 个人觉得直接使用uni-id-pages中对只开发小程序或app开发者来说可能有点冗余,且uni-id-pages不易改。
- 因为本质上是基于uni-id-pages,适配了uni-id相关的云函数,可从原uni-id-pages迁移,但是要注意部分页面路径需要改动。
使用方式
使用uni_modules一键导入
uni-config-center配置
在uniCloud/cloudfunctions/common/uni-config-center/下
1. uni-captcha验证码配置
原uni-id-pages的验证码个人感觉很难看清,故该插件内已做了相对较易识别的样式,正常情况下已无需再更改。 详见官方文档uni-captcha图形验证码
{
"width": 150,
"height": 40,
"background": "",
"size": 4,
"noise": 4,
"color": true,
"fontSize": 60,
"ignoreChars": "",
"mathExpr": false,
"mathMin": 1,
"mathMax": 9,
"mathOperator": "",
"expiresDate": 180,
"scene": {
"login": {
"mathExpr": true
},
"register": {
"expiresDate": 60
}
}
}
2. uni-id配置
uni-id的配置应该不用多说,官方文档uni-id用户体系,配置相关appid和secret等相关参数
特点
- 支持账号密码登录、短信验证码登录、手机号一键登录、微信登录,密码更改,短信验证码重置密码等。
- 该插件相对uni-id-pages来说,代码更简洁,且富含注释,易二次开发,样式也易修改。
- 新的登录与个人空间界面,若需自定义页面样式,也很容易且方便开发者重构。
- 扩展uni-id-pages-userInfo内容。
- 提供url化的接口,遵守云对象url化规范,使用前需要知晓官方文档云函数URL化使用方式。
- 对图片上传进行了优化,开发者可自定义头像上传的文件夹,默认会在云存储生成avatarstorage文件夹,头像图片以 用户id + 时间戳 为文件名,在avatarstorage文件夹下保存,并且在用户更新头像时,会对旧头像进行文件资源删除释放处理。
- 登录成功监听:(和uni-id-pages原版保持一致,新增回调参数e,即用户登录成功后的id等属性)
uni.$on('uni-id-pages-login-success', (e) => {
console.log('==== 登录成功 ====', e);
})
- 退出登录事件:(和uni-id-pages原版保持一致)
import { mutations } from '@/uni_modules/sv-id-pages/common/store.js'
mutations.logout()
- 角色表和权限表内置了默认初始数据,位于database下的 uni-id-roles.init_data.json 及 uni-id-permission.init_data.json 可鼠标右键初始化云数据库数据
注意
- 若遇到sv-handler公共模块的node包出错的情况,需要鼠标右键sv-handler文件夹,点击使用命令行窗口打开所在目录,运行
npm i
重新装包即可,其他云对象若报同样的错也是一致处理方式
写在最后
若对插件有任何疑问或者优化建议,欢迎在评论区留言,在插件市场中的私信消息本人可能不经常留意,导致没能及时回复, 可以加入本人的插件问答QQ交流群: 852637893,欢迎进群交流。