千家信息网

在Html5如何获取高德地图定位的天气

发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,小编给大家分享一下在Html5如何获取高德地图定位的天气,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!注:使用的是的模块注入方式,适用各种前端单页面应用及H5创建一个AMap.js文
千家信息网最后更新 2025年01月16日在Html5如何获取高德地图定位的天气

小编给大家分享一下在Html5如何获取高德地图定位的天气,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

注:使用的是的模块注入方式,适用各种前端单页面应用及H5

创建一个AMap.js文件:

// AMap.js// 高德map   https://webapi.amap.com/maps?v=1.4.11&key=你的高德地图的keyexport default function MapLoader () {return new Promise((resolve, reject) => {if (window.AMap) {  resolve(window.AMap)} else {  var script = document.createElement('script')  script.type = 'text/javascript'  script.async = true  //这里引入的是全部模块,或者按需要模块引入,加参数plugin="模块名"  script.src =    'http://webapi.amap.com/maps?v=1.4.11&callback=initAMap&key=6747cb97****************7e774b4b62' //你的高德应用AK (申请参考官方文档)  script.onerror = reject  document.head.appendChild(script)''}window.initAMap = () => {  resolve(window.AMap)}})}

使用

vue 示例:

import MapLoader from '@/common/SDK/AMap.js'MapLoader().then(AMap => {                //加载定位插件                AMap.plugin(['AMap.Geolocation', 'AMap.Weather'], function() {                    var geolocation = new AMap.Geolocation({                        // 是否使用高精度定位,默认:true                        enableHighAccuracy: true,                        // 设置定位超时时间,默认:无穷大                        timeout: 10000,                        // 定位按钮的停靠位置的偏移量,默认:Pixel(10, 20)                        buttonOffset: new AMap.Pixel(10, 20),                        //  定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false                        zoomToAccuracy: true,                        //  定位按钮的排放位置,  RB表示右下                        buttonPosition: 'RB'                    })                                geolocation.getCurrentPosition()                    AMap.event.addListener(geolocation, 'complete', onComplete)                    AMap.event.addListener(geolocation, 'error', onError)                    var weather = new AMap.Weather();                                function onComplete(data) {                        // data是具体的定位信息                        that.$store.dispatch('UPDATE_ADDRESS', data.formattedAddress)                        // weather.getForecast(data.addressComponent.adcode, function(err, data) {                        //     console.log(err, data);                        // });                        weather.getLive(data.addressComponent.adcode, function(err, data) {                            // console.log(err, data);                            let obj = {                                adcode: "330100", //区域编码                                city: "杭州市", //城市                                humidity: "92", //空气湿度(百分比)                                info: "OK", //状态                                province: "浙江", //省份                                reportTime: "2019-12-24 19:55:48",                                temperature: 10, //实时气温,单位:摄氏度                                weather: "阴", //天气预报                                windDirection: "东", // 风向,风向编码对应描述                                windPower: "≤3", //风力,风力编码对应风力级别,单位:级                            }                            let weatherObj = {                                date: `${that.$moment().format('MM月DD日')}`,                                week: `${that.$moment().format('d')}`,                                temperature: data.temperature,                                currentCity: data.city,                                weatherDesc: data.weather                            }                            that.$store.dispatch("UPDATE_Weather", weatherObj)                        });                                }                                function onError(data) {                        // 定位出错                        if (data.info == 'NOT_SUPPORTED') {                            uni.showModal({                                title: '提示',                                content: '当前浏览器不支持定位功能' || '定位失败'                            })                        } else if (data.info == 'FAILED') {                            uni.showModal({                                title: '提示',                                content: data.message || '定位失败'                            })                        }                                }                })            }, e => {                console.log('地图加载失败', e)            })        }

看完了这篇文章,相信你对"在Html5如何获取高德地图定位的天气"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

定位 地图 高德 模块 天气 位置 编码 风力 单位 按钮 篇文章 范围 视野 风向 应用 提示 前端 功能 区域 参数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 美国新增网络安全企业 数据库的法律属性 慈溪安卓软件开发教程 服务器电源风扇为什么不能调速 数据库安全的威胁来自何方 怎么设置服务器文件夹安全项 hp塔式服务器进阵列卡管理 数据上传服务器管理办法 学习电脑网络技术哪个学校好 安卓单机软件开发 mes服务器上门维修 怎么查看数据库是谁锁表 ubuntu服务器怎么联网 电商软件开发怎么样 我的世界网络安全教程 广电网络安全播出通知 计算机网络技术基础第二章笔记 服务器有个程序一直占用cpu 网吧服务器需要公网ip吗 java开发有没有数据库 仓库进销存软件开发 计算机网络技术有那些 天地一体广域量子通信网络技术 手游元神没办法选服务器吗 北京软件开发服务有限公司 梦幻西游服务器开多久转区 网络安全产品宣讲视频 网络安全不是个目标 如何知道自己数据库被别人备份 第一期我的世界神奇宝贝服务器
0