微信小程序使用map组件实现获取定位城市天气或者指定城市天气数据功能


Posted in Javascript onJanuary 22, 2019

本文实例讲述了微信小程序使用map组件实现获取定位城市天气或者指定城市天气数据功能。分享给大家供大家参考,具体如下:

效果图

微信小程序使用map组件实现获取定位城市天气或者指定城市天气数据功能

实现原理

采用高德地图微信小程序开发API(getWeather),如果 city 属性的值为空(或者没有city属性),默认返回定位位置的天气数据;如果 city 不为空,则返回 city 指定位置的天气数据。

WXML

<view class="map-weather">
 <view><text>城市:</text>{{address}}</view>
 <view><text>天气:</text>{{weather}}</view>
 <view><text>温度:</text>{{temperature}}℃</view>
 <view><text>风力:</text>{{windpower}}级</view>
 <view><text>湿度:</text>{{humidity}}%</view>
 <view><text>风向:</text>{{winddirection}}</view>
</view>

JS

const app = getApp();
const amap = app.data.amap;
const key = app.data.key;
Page({
 data: {
 address:'',
 weather:'',
 temperature:'',
 humidity:'',
 windpower:'',
 winddirection:''
 },
 onLoad(){
 var _this = this;
 var myAmap = new amap.AMapWX({ key: key });
 myAmap.getWeather({
  type: 'live',
  success(data) {
  if(data.city){
   _this.setData({
   address: data.liveData.city,
   humidity: data.liveData.humidity,
   temperature: data.liveData.temperature,
   weather: data.liveData.weather,
   winddirection: data.liveData.winddirection,
   windpower: data.liveData.windpower
   })
  }
  },
  fail() {
  wx.showToast({ title: '失败!' })
  }
 })
 }
})

WXSS

page{
 width: 100%;
 height: 100%;
 background-color: lightseagreen;
 color:#fff;
}
.map-weather{
 position: fixed;
 top: 50%;
 left: 50%;
 transform: translateY(-50%) translateX(-50%);
}
.map-weather view{
 height: 100rpx;
 line-height: 100rpx;
 font-size: 30rpx;
}

另外,本站在线工具小程序上有一款天气查询工具,还添加了城市选择的功能,感兴趣的朋友可以扫描如下小程序码查看:

微信小程序使用map组件实现获取定位城市天气或者指定城市天气数据功能

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
Mootools 1.2 手风琴(Accordion)教程
Sep 15 Javascript
使用JS读秒使用示例
Sep 21 Javascript
标题过长使用javascript按字节截取字符串
Apr 24 Javascript
借助javascript代码判断网页是静态还是伪静态
May 05 Javascript
javascript跨域总结之window.name实现的跨域数据传输
Nov 01 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
Nov 29 Javascript
实例详解ECMAScript5中新增的Array方法
Apr 05 Javascript
浅谈js和css内联外联注意事项
Jun 30 Javascript
浅谈toLowerCase和toLocaleLowerCase的区别
Aug 15 Javascript
详解vue 模拟后台数据(加载本地json文件)调试
Aug 25 Javascript
基于纯JS实现多张图片的懒加载Lazy过程解析
Oct 14 Javascript
vue实现跳转接口push 转场动画示例
Nov 01 Javascript
微信小程序使用map组件实现解析经纬度功能示例
Jan 22 #Javascript
微信小程序全局变量功能与用法详解
Jan 22 #Javascript
微信小程序使用map组件实现路线规划功能示例
Jan 22 #Javascript
JavaScript JMap类定义与使用方法示例
Jan 22 #Javascript
vue2.0 如何在hash模式下实现微信分享
Jan 22 #Javascript
JavaScript继承与聚合实例详解
Jan 22 #Javascript
JavaScript格式化json和xml的方法示例
Jan 22 #Javascript
You might like
php中文本操作的类
2007/03/17 PHP
ThinkPHP多表联合查询的常用方法
2020/03/24 PHP
PHP实现的同步推荐操作API接口案例分析
2016/11/30 PHP
JS 类型转换常见方法小结
2010/05/31 Javascript
jQuery UI Dialog控件中的表单无法正常提交的解决方法
2010/12/19 Javascript
利用进制转换压缩数字函数分享
2014/01/02 Javascript
jquery ajax传递中文参数乱码问题及解决方法说明
2014/02/07 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
json的定义、标准格式及json字符串检验
2014/05/11 Javascript
深入解析JavaScript中的数字对象与字符串对象
2015/10/21 Javascript
基于JavaScript实现右键菜单和拖拽功能
2016/11/28 Javascript
Vue.js中用webpack合并打包多个组件并实现按需加载
2017/02/17 Javascript
vue单个组件实现无限层级多选菜单功能
2018/04/10 Javascript
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
微信小程序学习笔记之本地数据缓存功能详解
2019/03/29 Javascript
微信小程序实现传递多个参数与事件处理
2019/08/12 Javascript
使用layui日期控件laydate对开始和结束时间进行联动控制的方法
2019/09/06 Javascript
JS面向对象编程基础篇(二) 封装操作实例详解
2020/03/03 Javascript
js校验开始时间和结束时间
2020/05/26 Javascript
Vue实现input宽度随文字长度自适应操作
2020/07/29 Javascript
[05:36]DOTA2 2015国际邀请赛中国区预选赛第四日TOP10
2015/05/29 DOTA
Python标准库之多进程(multiprocessing包)介绍
2014/11/25 Python
python  创建一个保留重复值的列表的补码
2018/10/15 Python
Pandas之DataFrame对象的列和索引之间的转化
2019/06/25 Python
python3 配置logging日志类的操作
2020/04/08 Python
8种常用的Python工具
2020/08/05 Python
python中altair可视化库实例用法
2021/01/26 Python
canvas仿写贝塞尔曲线的示例代码
2017/12/29 HTML / CSS
美国知名的摄影器材销售网站:Adorama
2017/02/01 全球购物
Etam艾格英国官网:法国著名女装品牌
2019/04/15 全球购物
意大利在线药房:Saninforma
2021/02/11 全球购物
管理部部长岗位职责
2013/12/05 职场文书
大学生家政服务项目创业计划书
2014/01/30 职场文书
2015元旦节寄语
2014/12/08 职场文书
2015年党性分析材料
2014/12/19 职场文书
小组组名及励志口号
2015/12/24 职场文书