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开发者中心

预览

插件地址

相关推荐
FlyWIHTSKY10 分钟前
**Vue 3 `<script setup>` 语法糖** 中的一行解构赋值,用来**从父组件透传下来的属性(attrs)
vue
CAE虚拟与现实15 分钟前
前后端调试常用工具大全
前端·后端·vue·react·angular
iuu_star16 分钟前
跑通最简单的Vue3+Python前后端分离项目
前端·vue.js·python
我是伪码农39 分钟前
小程序26-50
小程序
码海扬帆:前端探索之旅9 小时前
深度定制 uni-combox:新增功能详解与实战指南
前端·vue.js·uni-app
换日线°13 小时前
vue 加入购物车抛物线动画
前端·javascript·vue.js
计算机学姐13 小时前
基于微信小程序的图书馆座位预约系统【uniapp+springboot+vue】
vue.js·spring boot·微信小程序·小程序·java-ee·uni-app·intellij-idea
中犇科技15 小时前
电商app源码系统推荐|开源 uniapp 商城系统
uni-app
镜宇秋霖丶15 小时前
2026.5.8@霖宇博客制作中遇见的问题
前端·vue.js·elementui