nocobase原生的地图插件不支持定位,使用js区块存在高德sdk导入和执行权限等问题,搞了几天后通过以下方案实现了考勤打卡:
1.配置一个打卡页面,并在系统首页设置入口。
进入打卡页面后如果url里面没有定位信息就跳转到第2步所述页面;
2.编写一个单独的高德定位页面然后以独立文件的形式上传到系统,点击下载后能获取到页面的https访问地址,如果系统没有https证书就购买或者手动生成一个;
这个页面的功能是通过手机获得定位信息并加密,加密时需要加入一个获得定位信息时的时间戳,再将加密信息添加到url地址中跳转回系统打卡页面;
3.打卡页面解析url地址中的加密信息并验证时间戳,如果时间戳距离现在超过一定时间就提示定位过期并跳转回首页。
这样一来就有了一个能记录打卡地点和坐标的考勤打卡功能。
首页:
定位页面(跳转太快,为了截图就关了定位):
打卡页面:


