uni-app插件,高德地图、地图区域绘制、定位打卡

介绍

高德地图、地图区域绘制、定位打卡

示例

默认 (展示地图,是否可以打卡)

复制代码
<template>
    <view class="container">
        <map-positioning-punch
            :clock-in-area="clockInArea"
            :refresh-timeout="refreshTimeout"
            @clockInClick="clockIn"
            :is-report="true"
            @change="locationChange"
        >
        </map-positioning-punch>
    </view>
</template>

<script>
    /**
     * 作者:腾辉工作室
     * 邮箱:844475003@qq.com
     */
    export default {
        data() {
            return {
                // 打卡区域设置
                clockInArea: [
                    {
                        longitude: '111.455906',
                        latitude: '27.257652',
                        distance: 150,
                    },
                    {
                        longitude: '111.45304',
                        latitude: '27.256399',
                        distance: 400,
                    },
                    {
                        longitude: '111.447355',
                        latitude: '27.258016',
                        distance: 300,
                    }
                ],
                // 刷新打卡区域频率
                refreshTimeout: 3000
            }
        },
        methods: {
            // 位置变化
            locationChange({ location, areaLocation, distance }) {
                uni.showToast({
                    icon: 'success',
                    title: '上报成功'
                })
                // location 当前位置
                // areaLocation 符合打卡的区域
                // distance 打卡距离
                console.log(11, location, areaLocation, distance)
            },
            // 打卡回调事件
            clockIn({ location, areaLocation, distance }) {
                uni.showToast({
                    icon: 'success',
                    title: '打卡成功'
                })
                // location 当前位置
                // areaLocation 符合打卡的区域
                // distance 打卡距离
                console.log(location, areaLocation, distance)
            }
        }
    }
</script>

参数

参数名 描述
clockInArea 打卡区域设置 Array<经纬度信息、半径>
refreshTimeout 打卡定位刷新频率 Number,默认:3000
clockIn 打卡数据回调 Function 返回 location-当前位置, areaLocation-符合打卡区域信息, distance -- 打卡位置距离打卡区域距离(m)
isPort 是否上报实时位置数据
change 上报数据返回,同打卡回调一致

自定义打卡按钮

复制代码
<map-positioning-punch
        :clock-in-area="clockInArea"
        :refresh-timeout="refreshTimeout"
        :is-report="true"
        @change="locationChange"
    >
        <view>自定义打卡按钮</view>
    </map-positioning-punch>

manifest.json App模块配置

高德地图开放平台

高德地图开放平台

获取用户名

个人中心

申请安卓、IOS应用

获取发布版安全码SHA1

uni-app开发者中心

预览

插件地址

相关推荐
计算机程序设计小李同学20 小时前
个人数据管理系统
java·vue.js·spring boot·后端·web安全
JosieBook21 小时前
【Vue】09 Vue技术——JavaScript 数据代理的实现与应用
前端·javascript·vue.js
Eason_Lou21 小时前
webstorm开发vue项目快捷跳转到vue文件
ide·vue.js·webstorm
起名时在学Aiifox1 天前
前端文件下载功能深度解析:从基础实现到企业级方案
前端·vue.js·typescript
云上凯歌1 天前
01 ruoyi-vue-pro框架架构剖析
前端·vue.js·架构
毕设十刻1 天前
基于Vue的迅读网上书城22f4d(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
爱健身的小刘同学1 天前
Vue 3 + Leaflet 地图可视化
前端·javascript·vue.js
恩创软件开发1 天前
创业日常2026-1-8
java·经验分享·微信小程序·小程序
musashi1 天前
用 Electron 写了一个 macOS 版本的 wallpaper(附源码、下载地址)
前端·vue.js·electron
徐徐子1 天前
从vue3 watch开始理解Vue的响应式原理
前端·vue.js