
1、掌握服务器域名配置和临时服务器部署;
2、掌握 wx.request 接口的用法。
申请API密钥


调用API
weather关键字代表获取实况天气,基于weather的接口有两个必填参数,分别为city和key,其中,city表示要查询的城市,此处选取城市ID为主要参数,key即为开发者的API KEY。
服务器域名配置
登录微信公众平台,进入小程序管理员后台,在“开发设置面板”的“服务器域名”中添加或修改所需要的网络通信的服务器域名地址。此小程序主要需要添加的为request合法域名,即为开发者在和风天气中的API Host。

在微信开发者工具新建空项目。

创建页面文件
在根目录下生成文件夹pages存放页面文件,首页默认为index。

删除和修改文件
utils文件夹及其所有内容;pages文件夹下的logs目录及其所有内容;index.wxml、index.wxss和app.wxss的所有代码;index.js的全部代码,输入关键词"page"自动补全函数;app.js的所有代码,输入关键词"app"自动补全函数。
创建其他文件
本项目还需要一个文件夹用存放天气图标素材,素材均来自于和风天气官网。在根目录下新建images文件夹及其子文件夹weather_icon,将图片文件全部复制进去。(需要注意的是,为了使图片更加覆盖各种天气,这里下载的是和风天气官网提供的完整zip,但图片格式为.svg)

导航栏设计
更改app.json文件将导航栏标题和背景改为自定义颜色。
图中所示代码改为蓝色背景色,预览效果如图。

页面设计
本小程序页面主要包含4个区域:
- 区域1: 地区选择器,用户可以自行选择查询的省、市、区;
- 区域2: 显示当前城市的温度和天气状态的文字说明;
- 区域3: 显示当前城市的天气图标;
- 区域4: 分多行显示其他天气信息,如湿度、气压、能见度和风向。
具体使用的组件如下:
<view><picker><image>container并在app.wxss中设置容器样式,包括高度、布局、是否居中以及间距。
<picker>组件完成,用户可以点击切换其他城市,组件内部随意填写一个城市名称(相当于默认城市),当点击城市名称时会从底部弹出控件让用户进行省、市、区的选择;

.svg的图标,因此在image组件内部必须注意要写为:/images/weather_icon/1.svg);
detail,接着定义需要的单元行(bar),在每行内部定义单元格(box)。
picker组件中的具体省份改为{{region}},接着为该组件追加自定义的bindchange事件,用于监听选项变化;

getWeather函数进行实况天气数据的获取,后续的天气查询以城市作为查询依据。
getWeather函数在生命周期函数onLoad和regionChange中分别调用,表示当页面加载时和切换城市时均主动获取一次实况天气数据。

{{now.属性}}的形式,为了加快获取数据的速度,最好在IS文件的data中为now规定初始数据,在获取到实际数据之前可以临时显示这些数据。

可以成功获取动态获取各城市天气:


API配置问题
参数格式错误
数据字段不匹配
图标格式错误
PNG格式,实际为SVG格式SVG格式缺少动态更新
location参数硬编码,无法动态切换城市getCityCode函数,支持动态城市代码获取setData的使用方法onLoad、onShow等)wx.request接口,了解API及服务器域名配置