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

预览

插件地址

相关推荐
Momo__8 小时前
VueUse createReusableTemplate —— 单文件组件内的模板复用神器
前端·vue.js
程序员小富8 小时前
我开源了一个开发者专属的智能 JSON 工具,得到了媳妇高度认可
前端·vue.js·后端
夏碧笔9 小时前
uni-app跨端地图实战:用第三方LBS替代微信平台收费服务
uni-app
JustHappy9 小时前
「软件设计思想杂谈🤔」“切图仔”也能懂编译原理?框架源码也许没那么难。聊聊 Vue 的编译(上)
前端·javascript·vue.js
Jinkey10 小时前
要用户手机号真的是为了打骚扰电话吗?浅谈微信生态会员账号体系与资产合并
后端·微信·微信小程序
假如让我当三天老蒯1 天前
Options API(选项式 API) 和 Composition API(组合式 API)
前端·vue.js·面试
用户4324281061142 天前
微信小程序从0到1接入微信支付的完整攻略
微信小程序
spmcor4 天前
微信小程序 setStorageSync 踩坑实录:别让"顺手一存"变成"隐形炸弹"
微信小程序
秃头网友小李4 天前
前端难点:keep-alive 缓存什么?RouterView 的 key 为什么要带 scopeId?
前端·vue.js
用户4324281061144 天前
小程序埋点设计规范:如何设计可扩展的数据采集体系
微信小程序