更新记录

2.0(2023-08-29)

增加正反向编码解析地址及经纬度信息

1.0.2(2023-08-29)

增加正向地址信息解析为经纬度

1.0.1(2023-08-29)

组件优化

查看更多

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.1.0 app-vue app-nvue
钉钉小程序 快手小程序 飞书小程序 京东小程序
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

cc-tencentGeocoding

使用方法

// 引入腾讯地图sdk
import qqmapsdk from "../../utils/qqmap-wx-jssdk.min.js";

// 地址反向编码解析地址
            reverseGeocodingClick(e) {

                const QQMapWX = new qqmapsdk({
                    //腾讯地图  需要用户自己去申请key
                    key: "SFABZ-WANWW-FISRY-3IGTF-HV7RE-YSFTI"
                });
                let that = this;

                QQMapWX.reverseGeocoder({
                    location: {
                        latitude: that.locatonDict.lat,
                        longitude: that.locatonDict.lng
                    },
                    success: function(res) {
                        console.log('解析地址成功', res);

                        uni.showModal({
                            title: "解析地址",
                            content: "解析地址 = " + JSON.stringify(res)
                        })
                        that.addressInfo = JSON.stringify(res);

                    },
                    fail: function(res) {
                        console.log(res);
                    },
                    complete: function(res) {
                        console.log(res);
                    }
                });
            },

            // 地址正向编码解析地址
            geocodingClick(e) {

                const QQMapWX = new qqmapsdk({
                    //腾讯地图  需要用户自己去申请key
                    key: "SFABZ-WANWW-FISRY-3IGTF-HV7RE-YSFTI"
                });
                let that = this;

                QQMapWX.geocoder({
                    address: that.locationAddress,
                    success: function(res) {
                        console.log('解析地址成功', res);

                        that.locatonInfo = JSON.stringify(res);

                    },
                    fail: function(res) {
                        console.log(res);
                    },
                    complete: function(res) {
                        console.log(res);
                    }
                });
            },          

HTML代码实现部分

<template>
    <view class="content">

        <view class="infoV">{{"地址信息 = "  + locationAddress }}

        <!-- 点击按钮 地址反向编码 -->
        <button @click="geocodingClick" style="margin: 18px 20px;">正向解析地址</button>

        <!-- 地址信息 -->
        <view class="infoView">{{locatonInfo}}</view>

        <view class="infoV">{{"经度信息 = "  + locatonDict.lng }}</view>
        <view class="infoV">{{"纬度信息 = " + locatonDict.lat }}

        <!-- 点击按钮 地址反向编码 -->
        <button @click="reverseGeocodingClick" style="margin: 18px 20px;">反向解析地址</button>

        <!-- 地址信息 -->
        <view class="infoView">{{addressInfo}}</view>

    </view>
</template>

<script>
    // 引入腾讯地图sdk
    import qqmapsdk from "../../utils/qqmap-wx-jssdk.min.js";

    export default {
        data() {
            return {

                locatonDict: {
                    lng: 112.2626,
                    lat: 23.1578
                },
                locationAddress: "广东省广州市天河区中山大道棠东东路128号",

                addressInfo: '',
                locatonInfo: ''
            }
        },
        /**
         * 生命周期函数--监听页面显示
         */
        onShow: function() {

        },

        methods: {

            // 地址反向编码解析经纬度
            reverseGeocodingClick(e) {

                const QQMapWX = new qqmapsdk({
                    //腾讯地图  需要用户自己去申请key
                    key: "SFABZ-WANWW-FISRY-3IGTF-HV7RE-YSFTI"
                });
                let that = this;

                QQMapWX.reverseGeocoder({
                    location: {
                        latitude: that.locatonDict.lat,
                        longitude: that.locatonDict.lng
                    },
                    success: function(res) {
                        console.log('解析地址成功', res);

                        uni.showModal({
                            title: "解析地址",
                            content: "解析地址 = " + JSON.stringify(res)
                        })
                        that.addressInfo = JSON.stringify(res);

                    },
                    fail: function(res) {
                        console.log(res);
                    },
                    complete: function(res) {
                        console.log(res);
                    }
                });
            },

            // 地址正向编码解析地址
            geocodingClick(e) {

                const QQMapWX = new qqmapsdk({
                    //腾讯地图  需要用户自己去申请key
                    key: "SFABZ-WANWW-FISRY-3IGTF-HV7RE-YSFTI"
                });
                let that = this;

                QQMapWX.geocoder({
                    address: that.locationAddress,
                    success: function(res) {
                        console.log('解析地址成功', res);

                        that.locatonInfo = JSON.stringify(res);

                    },
                    fail: function(res) {
                        console.log(res);
                    },
                    complete: function(res) {
                        console.log(res);
                    }
                });
            },

        }
    }
</script>

<style>
    .content {
        display: flex;
        flex-direction: column;
        width: 100%;

    }

    .infoV {
        font-size: 14px;
        margin: 10px 20px;

    }

    .infoView {

        margin-left: 16px;
        width: calc(100vw - 48px);

        font-size: 13px;
        font-family: PingFangSC-Regular, PingFang SC;
        font-weight: 400;
        color: #333333;
        line-height: 20px;
        padding: 12px 8px;
        background-color: #F6F7F8;

        /* 换行 */
        white-space: pre-line;
    }
</style>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问