微信小程序使用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 相关文章推荐
详解jquery中$.ajax方法提交表单
Nov 03 Javascript
Javascript中With语句用法实例
May 14 Javascript
基于Node.js实现nodemailer邮件发送
Jan 26 Javascript
javascript运算符——逻辑运算符全面解析
Jun 27 Javascript
jQuery ajax的功能实现方法详解
Jan 06 Javascript
Vue之Watcher源码解析(1)
Jul 19 Javascript
vue父组件向子组件传递多个数据的实例
Mar 01 Javascript
React router动态加载组件之适配器模式的应用详解
Sep 12 Javascript
vue中使用elementUI组件手动上传图片功能
Dec 13 Javascript
微信小程序以ssm做后台开发的实现示例
Apr 08 Javascript
vue项目两种方式实现竖向表格的思路分析
Apr 28 Vue.js
ant design vue的form表单取值方法
Jun 01 Vue.js
微信小程序使用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
全新的PDO数据库操作类php版(仅适用Mysql)
2012/07/22 PHP
php自定义函数实现JS的escape的方法示例
2016/07/07 PHP
PHP框架自动加载类文件原理详解
2017/06/06 PHP
jquery load()在firefox(火狐)下显示不正常的解决方法
2011/04/05 Javascript
js关闭模态窗口刷新父页面或跳转页面
2012/12/13 Javascript
HTML页面弹出居中可拖拽的自定义窗口层
2014/05/07 Javascript
javascritp添加url参数将参数加入到url中
2014/09/25 Javascript
jQuery中Form相关知识汇总
2015/01/06 Javascript
node.js中格式化数字增加千位符的几种方法
2015/07/03 Javascript
js实现兼容性好的微软官网导航下拉菜单效果
2015/09/07 Javascript
js实现九宫格的随机颜色跳转
2017/02/19 Javascript
Vue通过input筛选数据
2020/10/26 Javascript
vue实现登录后页面跳转到之前页面
2018/01/07 Javascript
详解Vue中使用Echarts的两种方式
2018/07/03 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
2018/07/30 Javascript
QRCode.js二维码生成并能长按识别
2018/10/16 Javascript
教你搭建按需加载的Vue组件库(小结)
2019/07/29 Javascript
微信小程序 SOTER 生物认证DEMO 指纹识别功能
2019/12/13 Javascript
深入理解redux之compose的具体应用
2020/01/12 Javascript
vue实现购物车案例
2020/05/30 Javascript
python使用PIL模块实现给图片打水印的方法
2015/05/22 Python
python脚本替换指定行实现步骤
2017/07/11 Python
PyQt5每天必学之布局管理
2018/04/19 Python
python实现动态数组的示例代码
2019/07/15 Python
django inspectdb 操作已有数据库数据的使用步骤
2021/02/07 Python
Shopping happy life西班牙:以最优惠的价格提供最好的时尚配饰
2020/03/13 全球购物
网上常见的一份Linux面试题(多项选择部分)
2015/02/07 面试题
什么是测试驱动开发(TDD)
2012/02/15 面试题
金融学专科生自我鉴定
2014/02/21 职场文书
公司担保书范文
2014/05/21 职场文书
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
大学生求职自荐信范文
2015/03/04 职场文书
年度考核个人总结
2015/03/06 职场文书
2020年个人安全保证书参考模板
2020/01/08 职场文书
Python列表删除重复元素与图像相似度判断及删除实例代码
2021/05/07 Python
深入详解JS函数的柯里化
2021/06/09 Javascript