最简单vue获取当前地区天气--高德开放平台实现

这篇具有很好参考价值的文章主要介绍了最简单vue获取当前地区天气--高德开放平台实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

一、注册成为高德平台开发者

二、注册天气key

1.点击首页右上角打开控制台

 2.创建新应用

三、vue项目使用

1.打开vue项目找到public下的index.html,如果是vue3的话直接在主目录打开index.html文件就行,主要就是打开出口文件

​编辑

2.根据高德开放文档获取当前城市信息

 3.获取天气信息

 4.完整代码

5.效果

四、流量限制


前言

        之前就写过一版vue获取天气地区信息接口的,是根据腾讯位置服务,获取到当前为止信息,之后再去请求心知天气的api获取到当前天气信息。但是打包后有跨域的问题,修改也比较麻烦,故此这个版本放弃了,找了个最简单的,通过高德开放平台的地理位置信息去请求高德的天气接口实现,比之前的简单,故此记录一下。

有感兴趣的小伙伴也可以看我之前写的那篇:获取地理位置请求免费天气接口_请叫我欧皇i的博客-CSDN博客


提示:以下是本篇文章正文内容,下面案例可供参考

一、注册成为高德平台开发者

  1. 打开高德开放平台,注意!!如果打开后各种操作响应巨慢,可以换个浏览器打开高德开放平台,比如谷歌

高德开放平台 | 高德地图API

      2.登录注册成为开发者,注册成功后应该如下所示

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

二、注册天气key

1.点击首页右上角打开控制台

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

 2.创建新应用

应用管理===》我的应用===》创建新应用

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

选择天气后点击新建 

 最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

 新建完后点击添加key最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

 最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

 点击蓝色字体:安全密钥使用说明

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

三、vue项目使用

1.打开vue项目找到public下的index.html,如果是vue3的话直接在主目录打开index.html文件就行,主要就是打开出口文件

直接使用他官网的方式二实现

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

在index.html的 <head>标签内添加以下代码,密钥就是下图的这俩个,别贴错了,这个key和安全密钥都要添加上去

注意!!每次修改完出口文件后记得重启vue项目

<script type="text/javascript">
        window._AMapSecurityConfig = {
            securityJsCode:'您申请的安全密钥',
        }
</script>
<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=您申请的key值"></script> 

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

2.根据高德开放文档获取当前城市信息

创建个weather.vue文件

       getCity() {
            let that = this;
            let city=null;
            AMap.plugin('AMap.CitySearch', function() {
                var citySearch = new AMap.CitySearch();
                citySearch.getLocalCity(function(status, result) {
                    if (status === 'complete' && result.info === 'OK') {
                       
                       console.log(result,'城市信息')
                    }
                });
            });
        },

得到城市信息如下:

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

 3.获取天气信息

这边需要上个接口传个当前的城市名称之后再调用

  // 获取天气
        getWeather(city) {
            //加载天气查询插件
            AMap.plugin('AMap.Weather', function() {
                //创建天气查询实例
                let weather = new AMap.Weather();
                //执行实时天气信息查询
                weather.getLive(city, function(err, data) {
                    console.log(err, data);
                    if (data.info == 'OK') {
                    }
                });
            });
        }

得到:

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

 4.完整代码

<template>
  <div class="box">
    <p class="boxTemperature">{{ weatcherData.temperature }}°</p>
    <p class="boxWeather">{{ weatcherData.weather }}</p>
    <p class="boxCity">{{ weatcherData.city }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      weatcherData: {
        adcode: "",
        city: "",
        humidity: "",
        info: "",
        province: "",
        reportTime: "",
        temperature: 0,
        weather: "",
        windDirection: "",
        windPower: "",
      },
    };
  },
  mounted() {
    this.getCity();
  },
  methods: {
    getCity() {
      let that = this;
      AMap.plugin("AMap.CitySearch", function () {
        var citySearch = new AMap.CitySearch();
        citySearch.getLocalCity(function (status, result) {
          if (status === "complete" && result.info === "OK") {
            // 查询成功,result即为当前所在城市信息
            that.getWeather(result.city);
          }
        });
      });
    },
    // 获取天气
    getWeather(city) {
      let that = this;
      //加载天气查询插件
      AMap.plugin("AMap.Weather", function () {
        //创建天气查询实例
        let weather = new AMap.Weather();
        //执行实时天气信息查询
        weather.getLive(city, function (err, data) {
          console.log(data);
          if (data.info == "OK") {
            that.weatcherData = data;
            console.log(that.weatcherData, "天气");
          }
        });
      });
    },
  },
};
</script>

<style scoped>
.box {
  display: flex;
  align-items: center;
  color: #5e5757;
  margin-right: 20px;
}
.boxTemperature {
  font-size: 18px;
}
.boxWeather {
  font-size: 14px;
  margin: 0 0 0 15px;
}
.boxCity {
  margin-left: 10px;
  font-size: 16px;
}
</style>

5.效果

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

四、流量限制

个人开发者一天可以调用5k,算还不错吧,小企业的话这个应该也能满足了

流量限制说明-实用工具-开发指南-Web服务 API | 高德地图API

最简单vue获取当前地区天气--高德开放平台实现,vue,vue.js,前端,javascript

打包后也可以获取到,也不需要跨域啥的。如果还有更好的办法可以在评论区联系我~

文章到此结束,希望对你有所帮助~文章来源地址https://www.toymoban.com/news/detail-683192.html

到了这里,关于最简单vue获取当前地区天气--高德开放平台实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【微信小程序】免费的高德地图api——获取天气(全过程)

    介绍 这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。 一个人为什么要努力? 我见过最好的答案就是:因为我喜欢的东西都很贵,

    2024年02月02日
    浏览(67)
  • 微信小程序使用高德地图获取当前定位

    1.在腾讯地图官网注册一个key(创建一个应用会自动生成一个key,详细步骤如图) 腾讯位置服务 - 立足生态,连接未来 注意点:开通webserviceAPI服务:控制台 -应用管理 - 我的应用 -添加key- 勾选WebServiceAPI - 保存 (小程序SDK需要用到webserviceAPI的部分服务,所以使用该功能的KEY需

    2024年02月06日
    浏览(45)
  • uniapp---- 微信小程序中获取当前地理位置(高德地图)

    1.在manifest.json中选择微信小程序配置,勾选上位置接口。 2.在manifest.json中选择源码视图,添加permission和requiredPrivateInfos 3.进入微信公众平台添加合法域名(不能少但是可以放在最后添加,调试期间可以打开开发者工具的不校验合法域名) 4.下载amap-wx.130.js,并且进行引用,

    2024年02月12日
    浏览(43)
  • uniapp开发小程序解析经纬度获取当前位置信息(高德地图三)

    选择了高德地图定位 高德地图官网 小程序步骤如下:      1.首先创建应用       2.点击增添key按钮申请小程序key         3.然后下载它的微信小程序版 SDK:微信小程序 SDK         4.把下载的sdk放在公共的文件里,这里我放在了utils文件目录下          5.使用页面导入此

    2024年02月02日
    浏览(45)
  • 记录--手把手教你Vue+ECharts+高德地图API实现天气预报数据可视化

    所谓数据可视化,我们可以理解为从宏观角度来看一眼就能看出来整个数据的占比,走向。对于数据可视化,很多互联网公司是很看重这一块的,包括大厂;就比如阿里的淘宝,双十一的时候往往就需要将消费者的一些数据通过图的形式展现出来。接下来我们就来实现一个天

    2024年02月07日
    浏览(56)
  • vue 引入高德地图当前定位失败 Get ipLocation failed.Geolocation permission denied.

    getCurrentPosition 返回的 message 原因解析 : Get ipLocation failed : IP 精确定位失败,精确IP定位服务目前无法完全覆盖所有用户 IP ,失败率在5%左右。 sdk 定位失败:检查 sdk 的 key 是否设置好,以及 webview 的定位权限及应用和系统的定位权限是否开启。 浏览器定位失败,有多种情

    2024年02月04日
    浏览(59)
  • 高德地图的简单使用:点击标记获取经纬度和详细地址

    1. 先进入高德开发平台注册登录 2.进入地图 js Api 按照步骤申请key 3 使用npm安装依赖包 npm i @amap/amap-jsapi-loader --save 4. 高德api 都有说明 下面看下我实现的功能和代码 1. 初始化地图加载地图将自动定位到您所在城市并显示,点击地图实现了打点获取经纬度和详情地址。 2.输入提

    2024年02月12日
    浏览(65)
  • 前端Vue自定义简单通用省市区选择器picker地区选择器picker 收获地址界面模版

    随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。通过组件化开发,可以有效实现单独开发,单独维护,而且他们之间可以随

    2024年02月10日
    浏览(62)
  • 最简单的人脸检测(免费调用百度AI开放平台接口)

    远程调用百度AI开放平台的web服务,快速完成人脸识别 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 在检测人脸数量、位置、性别、口罩等场景时,可以考虑使用百度开放平台提供的web接口,一个web请求就能完成检测得到结果,本篇记录了从申

    2024年02月12日
    浏览(73)
  • [JAVA版本] Websocket获取B站直播弹幕——基于直播开放平台

    B站直播间弹幕Websocket获取 — 哔哩哔哩直播开放平台 基于B站直播开放平台开放且未上架时,只能个人使用。 fastjson2用于解析JSON字符串 ,可自行替换成别的框架。 hutool-core用于解压zip数据 ,可自行替换成别的框架。 用于发送项目start、end、heartbeat请求。 注意: 没有上架的

    2024年02月06日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包